![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
こんばんは。
下記スクリプトですが、「★★★」の個所で「オブジェクトでサポートされていないプロパティまたはメソッドです。」となってしまいます。なぜでしょうか?また、回避するにはどうしたらいいでしょうか?
やりたいことは、"rd"を含むURLだけリストしないのです。
--
var IE = WScript.CreateObject("InternetExplorer.Application");
var URL = "http://www.yahoo.co.jp";
IE.Navigate(URL);
WaitLoad();
var fs = WScript.CreateObject("Scripting.FileSystemObject");
var stream = fs.CreateTextFile("yahoo.txt");
var objTagsAs = IE.Document.all.tags("A");
for (i = 0; i < objTagsAs.length; i++)
if (objTagsAs[i].match(/rd/i) != -1) //★★★
stream.Write(objTagsAs[i] + "," + objTagsAs[i].innerText + "\r\n");
stream.Close();
function WaitLoad() {
var stat, dstart;
stat = 0;
while(true)
if(stat == 0) {
if(!IE.Busy)
if(IE.Document.readyState == "complete") {
dstart = (new Date()).getTime();
stat = 1;
}
}
else {
if(!IE.Busy &&
IE.Document.readyState == "complete") {
if((new Date()).getTime() >= dstart + 3000)
break;
}
else
stat = 0;
}
}
No.1ベストアンサー
- 回答日時:
matchということは、対象が文字列でないと使えないかと。
objTagsAs[i].だけでは、それはi番目のAタグオブジェクト自身を指しているだけで、文字列では無いから、という理由のエラーかと思われますが?違うかな?
それであれば、Aタグの前後を特定のタグで括るなりして、その内容をinnerHTMLで取得して、その文字列を対象にすればmatchが使えるかも。(アイディアだけですが。。。)
ありがとうございます。
型変換
if (String(objTagsAs[i]).match(/rd/i) != -1) //★★★
または
if ((objTagsAs[i]+"").match(/rd/i) != -1) //★★★
とすることで解決できました。
次の行の
stream.Write(objTagsAs[i] + "," + objTagsAs[i].innerText + "\r\n");
で出力できていたので、String型だと思っていたのですが、
「","」の部分で型変換されていたようですね。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript 画像の表示位置 3 2022/12/23 08:25
- JavaScript コードレビューをお願いします。 1 2022/07/16 05:38
- JavaScript 1日1回引けるJavaScriptおみくじについて 1 2022/12/12 22:28
- JavaScript jQueryでのドラッグアンドドロップについて 1 2022/07/07 21:04
- JavaScript javascript作成してます。ラジオボタンで判定するコードを書いてます。 1 2023/07/18 11:03
- JavaScript スマフォではボタンを表示させたくない 2 2023/01/20 14:26
- PHP PHPのエラーの解消法について教えて下さい。 1 2023/02/06 10:48
- Ruby vscode 文字化け 1 2022/05/21 19:17
- JavaScript gasについて 1 2022/05/31 21:51
- JavaScript プログラムがうまく動きませんレビューお願いします 1 2022/07/10 05:08
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
この将棋プログラムに王様ゲッ...
-
google apps scriptの終了のさせ方
-
アルファベットABCD…をスマート...
-
ASP.NETのコントロールの値をJa...
-
翌月を取得するGASが分かりません
-
APIを使って埋め込んだグーグル...
-
初回訪問(アクセス)日時の取...
-
JavaScriptで文字列の特定文字...
-
VSCODE[Python]の設定について
-
二次元配列に値をセットしたい...
-
なぜmatchメソッドがエラーにな...
-
JSONPを処理するにはどうすれば...
-
javaScriptのコードの修正をお...
-
ジェネレーターの作り方
-
colorbox (オーバレイでの向き...
-
ドロップダウンメニューのドロ...
-
<a>タグのテキストを取得
-
関数でy=g(x)のgとは何の略です...
-
idを使わずにonclickで自身の要...
-
同じIDで定義した要素の配列を...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
google apps scriptの終了のさせ方
-
C#OpenCv V4にのエラーに関する...
-
なぜmatchメソッドがエラーにな...
-
GASでundefinedエラーが出ます
-
ジェネレーターの作り方
-
html javascript リンク先アド...
-
gas スプレッドシートがアクテ...
-
翌月を取得するGASが分かりません
-
ASP.NETのコントロールの値をJa...
-
C# 演算 奇数と偶数 表現の仕方
-
javascriptでiframeのURL変更は?
-
C#で、ContextMenuStripに動的...
-
ASP.NET MVCでObjectをjsに渡す
-
1日1回引けるJavaScriptおみく...
-
javascriptでテーブルに追加し...
-
JavaScriptを使って毎日決まっ...
-
googleスプレッドシートのApps ...
-
JavaScriptで文字列の特定文字...
-
アクセス時からのカウントダウ...
-
ローカルにあるファイルを検索...
おすすめ情報