はじめたばかりの初心者です。
OS = XP
VB 6.0
上でwebbrowserコントロール上のボタンが
<INPUT class=css-wide-010 type=submit value=" OK ">
という表記なのですが、どうやらclass=css-wide-010 のせいで
Clickイベントが使えないらしいのです。
あまりにも無知な質問かもしれませんが、このようなボタンを押すには
どのようにしたらよいのでしょうか?よろしくお願いします。
すみません、上記のボタンが含まれてるフォーム表記に
<FORM name=FORM1 onsubmit="return Chk();" action=pw_090_i.cgi method=post>
こんなのがあったんですが、なんとなく重要な気がして…
どなたかご教授ください。よろしくお願いします。
<FORM name=FORM1 onsubmit="return Chk();" action=pw_090_i.cgi method=post>
<INPUT class=css-wide-010 type=submit value=" OK ">
</FORM>
で出来るのではないでしょうか?
一度もやったことがないのでこれに関しては
ちょっと、不安なんですけど・・・
たしか、記憶ではこの組み合わせで出来たと思います。
onsubmit="return Chk();" はinputのsubmitボタンが押されたら実行
そして、アドレスはaction=pw_090_i.cgi だったと思います。
マグ様ありがとうございます。
少し説明が足りなかったようです。
上記の<>文はwebbrowserコンロトールに現れるページのHTMLでページ上にOKボタンがあり、
それをVB上で自動で押させたいのです。
Set objTables = Me.WebBrowser1.Document.getElementsByTagName("TABLE")
Debug.Print "TABLEの数:", objTables.length
If objTables.length < 2 Then
Exit Sub
Else
If objTables.length > 2 Then
Set objTable = objTables(2)
End If
End If
.Document.Forms(0).elements(7).Click
こんな感じで書いたのですが普通のボタンですとこれでいけるのですが、やはりおそらくCSSのせいで
うまくいきません。CSSの知識がないのがいけないのだと思いますが、どのように書いたらいいのでしょうか。
私もwebbrowserコントロールをそんなに使ったことがないのでよく、わかりませんが・・・
CSSはスタイルシートと呼ばれ、レイアウト役です。
javascript見たいに動かす方のタイプではないですけどね・・・
よって、CSSはおそらく、影響がないと思います。
未確認ですが、そのボタンがsubmitなら
> .Document.Forms(0).elements(7).Click
の部分を
.Document.Forms(0).submit()
にしてみてはいかがでしょう?
>> Clickイベントが使えないらしいのです。
「clickメソッド」の事でしょうか? それとも
「onclickイベント」の事でしょうか?
> .Document.Forms(0).elements(7).Click
「document.FORM1.submit」、または、getElementsByNameメソッドを使って
「document.getElementsByName("FORM1").item(0).submit」だと如何でしょう。
> If objTables.length < 2 Then
> Exit Sub
> Else
> If objTables.length > 2 Then
> Set objTable = objTables(2)
> End If
> End If
.length = 2 の時の処理が抜けていますよ。
それと、今回のようにElse句に条件が続く時は、
If 条件1 Then
'
Else
If 条件2 Then
'
End If
End If
ではなく、
If 条件1 Then
'
ElseIf 条件2 Then
'
End If
の方が一般的かと思いますよ。
>> CSSのせいでうまくいきません。
私もマグさんと同意見で、CSSの指定自体は動作に影響を与える事は無いと思います。
onsubmitイベントに記述がある場合は、submitメソッドの方で試してみてください。
http://madia.world.coocan.jp/vb/vb_bbs/200309_03090009.html