javascriptの.contentsについて

[4201]javascriptの.contentsについて | 投稿者:kin | 投稿日:2010/02/16(Tue) 19:56:41
いつもお世話になっております。
基本的な事ですみませんが、表の状態でオーバーフローしているセルに対して
.contentsで文字列を取得するとオーバーフローしている文字列が取得されません。
わざとオーバーフローしなくなるまで長体をかけて、文字列を取得しているのですが、何か良い方法はありませんか?
.contentsの他に文字列を取得する方法があるのでしょうか?
よろしくお願いします。

Mac OS10.4.11でCS3を使ってます。
» 1
[4202]Re: javascriptの.contentsについて | 投稿者:梅花藻 | 投稿日:2010/02/16(Tue) 21:14:29
セルのcontentsではなく、セル内のcharactersとかparagraphsのcontentsを取得するのではどうでしょう?
ただ、以下のようにitemByRangeをかませるので、取り出されるものがArray(配列)に入ってしまいますけれど。

var sel=app.selection[0];//セルを選択
var temp = sel.paragraphs.itemByRange(0,-1).contents;
alert(sel.paragraphs.itemByRange(0,-1).contents);
» 2
[4205]Re: javascriptの.contentsについて | 投稿者:kin | 投稿日:2010/02/16(Tue) 21:39:23
梅花藻様

丁寧なご回答
ありがとうございます。
問題解決しました!
itemByRangeをかませると値が取得出来るのですね。
勉強なりました。助かりました!
» 3
[4206]Re: javascriptの.contentsについて | 投稿者:mg | 投稿日:2010/02/16(Tue) 21:44:05
sel.texts[0].contents;

でもいいかもしれません
» 4
[4215]Re: javascriptの.contentsについて | 投稿者:梅花藻 | 投稿日:2010/02/17(Wed) 14:58:56
>kin様

itemByRange(0,-1)で最初(0)から最後(-1)までの要素(この場合はセル内の全ての段落)を選んでいるだけで、セルないの全テキストを掴めればよいだけです。

そういうわけで、mgさんが書かれているように
sel.texts[0];
でセル内の全テキストが掴めるようですので、
sel.texts[0].contents;
で大丈夫のようです。
» 5
[4222]Re: javascriptの.contentsについて | 投稿者:kin | 投稿日:2010/02/18(Thu) 15:30:11
mg様
梅花藻様

お礼送れてすみません。

ありがとうございます。
.texts[0]で掴めるのを確認出来ました。
これでだいぶスクリプトを短縮出来るようになりました!
今までparagraphで一段落づつ処理しておりました。。。
感謝してます。
ありがとうございます。
この記事の書き込み元へのリンク (コメントや質問などはこちらへどうぞ)

このページをシェア