getElementsByNameの使い方


shima  2004-07-09 17:22:10  No: 114686  IP: [192.*.*.*]

Webbrowserコントロールを使用しています。
Submitボタンが押されてPOSTされたデータから、
以下のような命名規則で並んでいるHTML内の、
hiddenのvalue値をループで取得したいと思い、

<input type="hidden" name="No1" value="1">
<input type="hidden" name="No2" value="2">
<input type="hidden" name="No3" value="3">

For i = 0 To 3 Step 1
    Debug.Print WebBrowser.Document.getElementsByName("No" & i)).Item(0).Value
Next
と書いたのですが、実行時エラー91が発生しました。

WebBrowser1.Document.getElementsByName("No1").Item(0).Value
と直に書くと、value値である「1」が、
WebBrowser1.Document.getElementsByName("No2").Item(0).Value
とすると、「2」が表示されるのですが、
getElementsByName("No" & i))ような書き方はできないのでしょうか?

編集 削除
nanashi  2004-07-09 17:51:13  No: 114687  IP: [192.*.*.*]

> For i = 0 To 3 Step 1
>     Debug.Print WebBrowser.Document.getElementsByName("No" & i).Item(0).Value
> Next

iが0から始まってます。
「No0」の名前は無いのでそりゃエラーになりますよね。

編集 削除
マグ  2004-07-09 19:51:42  No: 114688  IP: [192.*.*.*]

Debug.Print WebBrowser.Document.getElementsByName("No" & i)).Item(0).Value
の所を
Debug.Print WebBrowser.Document.getElementsByName("No" & i+1)).Item(0).Value

のように変えて

For i = 0 To 3 Step 1
の所を
For i = 0 To 2
を変えてみてはどうでしょうか?

あと、Step 1 は省略しても変わらないので
省略してしまいましょう。

編集 削除
PuPuPu  2004-07-09 20:52:55  No: 114689  IP: [192.*.*.*]

>Debug.Print WebBrowser.Document.getElementsByName("No" & i)).Item(0).Value
>の所を
>Debug.Print WebBrowser.Document.getElementsByName("No" & i+1)).Item(0).Value
>
>のように変えて
>
>For i = 0 To 3 Step 1
>の所を
>For i = 0 To 2
>を変えてみてはどうでしょうか?

↑だったら、
For i = 1 To 3
でいいんじゃないの?

編集 削除
マグ  2004-07-10 12:00:35  No: 114690  IP: [192.*.*.*]

For i = 1 To 3でもいいんですけど・・・
プログラムは通常、数字だと0から始まるものだということを学びませんでしたか?

ポインターでのアセンブラーでしたっけ?
の番地が0000で始まっているのが理由みたいです。・・・・?

編集 削除
PuPuPu  2004-07-10 13:43:02  No: 114691  IP: [192.*.*.*]

>For i = 1 To 3でもいいんですけど・・・
>プログラムは通常、数字だと0から始まるものだということを学びませんでしたか?
>
>ポインターでのアセンブラーでしたっけ?
>の番地が0000で始まっているのが理由みたいです。・・・・?
あなたこそ何を学んだのですか?
言わんとしている事はだいだいわかりますが、
何か勘違いしているようですね。(って言うか全然別の話持ち出してきてるし・・・)
iはカウンタとして使う変数です。
0から始まらなければならない理由は全くありません。
マグさんのようなコーディングの仕方をしていたら、
とても○づらく○いプログラムができそうですね・・・

編集 削除
マグ  2004-07-10 19:00:45  No: 114692  IP: [192.*.*.*]

そうだったのですか?
自分の作ったプログラムが読みにくいわけって・・・
もしかして、それが原因だったのですか・・・?

編集 削除