function hoge(){
document.AA.AAA[1].selected = true;
}
・・・略
<form name="AA" action="#" style="margin:0px;">
<select name="AAA">
<option value="">-- select --</option>
<option value="ABC" title="ABC" >エービーシー</option>
<option value="XYZ" title="XYZ" >エックスワイゼット</option>
</select>
・・・・略
function hoge()を呼び出せば、セレクトボックスの
<option value="ABC" title="ABC" >エービーシー</option>
を選択することができます。
しかし、下記のURLページのように、フォームを3つ連動させた場合には、
上記の命令文だと、二個目のフォームが表示しません。
http://www.skuare.net/test/jdependent.html
マウスでクリックした動作と、
selected = true の動作が違うためだと考えられます。
javascriptでなにか使えそうな命令文、同じような動作をさせる方法
など知っている方いましたら教えていただけますか?
まじめに対処すると面倒そうですが、jQueryを使ってるならtriggerが使えるのでonchangeで実行される処理を走らせることもできそうです。
http://semooh.jp/jquery/api/events/trigger/type%2C+%5Bdata%5D/
function hoge(){ document.AA.AAA[1].selected = true; $(document.AA.AAA).trigger('change'); }
まじめに対処すると面倒そうですが、jQueryを使ってるならtriggerが使えるのでonchangeで実行される処理を走らせることもできそうです。
http://semooh.jp/jquery/api/events/trigger/type%2C+%5Bdata%5D/
function hoge(){ document.AA.AAA[1].selected = true; $(document.AA.AAA).trigger('change'); }
なにも問題なく、スムーズにできました。お答えありがとうございます。
無回答の場合も考えて、jQueryを使わないようにして、
3時間程度javascriptで動的に書き出すようにソース書いてました。
回答者さんのおっしゃるとおり、まじめに対処してましたので、面倒でした。(^^)
まあ、なにはともあれ良かったです。
jQueryのvalメソッドを使えば簡単ですね。
http://semooh.jp/jquery/api/attributes/val/val/
<!-- selectにIDを付けましょう //--> <select id="targ_1" name="hoge"> <option value=""></option> <option value="a">値は「a」</option> </select> <select id="targ_2" name="hogehoge"> <option value=""></option> <option value="あ">値は「あ」</option> </select> // javascript function hoge() { $('#targ_1').val('a'); $('#targ_2').val('あ'); }
これでそれぞれのセレクトで「a」と「あ」が選択されます。
別にdocument.getElementById()でも良いけどjQuery使えばもっと簡単に操作できますよ。
スムーズに、且つ、簡単にできました。
ありがとうございます。
なにも問題なく、スムーズにできました。お答えありがとうございます。
無回答の場合も考えて、jQueryを使わないようにして、
3時間程度javascriptで動的に書き出すようにソース書いてました。
回答者さんのおっしゃるとおり、まじめに対処してましたので、面倒でした。(^^)
まあ、なにはともあれ良かったです。