2016-05-25 8 views
0

InternetExplorer.Applicationのドロップダウン選択を問題にして変更を保存しようとしています。私が持っているコードは、これまでVBScriptを使用して選択したドロップダウン値を更新する方法

dim myValue 
myValue="3" 

for j = 0 to obj.Options.length - 1 
    if(obj.Options(j).Value = myValue) then 
     obj.Options(j).selected = true 
     exit for 
    end if 
next 
これは、現在のページのドロップダウンリストで動作

、しかし私は、[保存]をクリックで、値が「3」に保存されていないと私はリロードするときには、元の値に戻りますページ。

言及するもう一つは、私はページをリロードするとき、それは、新しい値に更新を行い、私は手動でドロップダウンをクリックし、値を選択しときに保存することです。私はそれにobj.click関数を試してみましたが、私はプログラマティックなマウスクリックが実際のマウスクリックと同じように動作するとは思いません。

私の推測は、新しい値の選択とページのアクションリスナーとの間のデータバインドと関係していると思います。私はかなりvbscriptに新しいとさまざまなものを試してみました。

ご協力いただければ幸いです。ありがとうございました!

+0

ウェブページでのドロップダウンボックスの定義方法の「html」コードを提供し、[mcve]を満たすためにあなたの 'VBScript'コードスニペットを広げてください。 – JosefZ

答えて

1

objオブジェクトが適切に設定されているとします。
set obj = ie.document.getElementById("my_dropdown")のようなもの、あなたが一つだけのオプションがを選択されていることを確認する必要があります

for j = 0 to obj.Options.length - 1 
    if (obj.Options(j).Value = myValue) then 
     obj.Options(j).selected = true   ''' do not exit for 
    else 
     obj.Options(j).selected = false 
    end if 
next 

または

For Each opt In obj.Options 
    If opt.Value = myValue Then 
     opt.Selected = True 
    Else 
     opt.Selected = False 
    End If 
Next 

注意というコードスニペットの上に(?望ましくない)場合に生じる可能性がオプションは選択されていません

+0

私はこれを試しただけで、まだ運がありません。値は変わりますが、レコードはまだ保存されません。 – twohyjr

+0

私はFireEvent( "onchange")が動作しているとは思わない。 – twohyjr

関連する問題