0

2 つの選択リストがあります。クリックすると、選択した値を他のリストにフィードする必要があるというチェックボックスがあります。

私は、最初の選択リストで選択した値をアラートバックすることができた段階まで来ました.私の質問は、チェックボックスがクリックされたときに2番目の選択リストで値を取得する方法です:

以下のコードを確認して、どこまで到達したかを確認してください。

<!DOCTYPE html>
    <html>
    <head>
    <script type="text/javascript">

    function displayResult() {
      if(document.form1.billingtoo.checked == true) {
        var x = document.getElementById("mySelect").selectedIndex;
        var y = document.getElementById("mySelect").options;
        alert(y[x].text);
      }
    }

    </script>
    </head>
    <body>

    <form name="form1">
    Select your favorite fruit:
        <select id="mySelect">
            <option>Apple</option>
            <option>Orange</option>
            <option>Pineapple</option>
            <option>Banana</option>
        </select>

        <br>

        <input type="checkbox" name="billingtoo" onclick="displayResult()">

        <br>

    Select your favorite fruit 2:
        <select id="mySelect2">
            <option>Apple</option>
            <option>Orange</option>
            <option>Pineapple</option>
            <option>Banana</option>
        </select>

    </form>
    </body>
    </html>

ありがとう。

4

1 に答える 1

1

他の選択要素の選択されたインデックスを設定するだけです。

jsFiddle の例

if(document.form1.billingtoo.checked == true) {
        var x = document.getElementById("mySelect").selectedIndex;
        var y = document.getElementById("mySelect").options;
        // Set selected index for mySelect2
        document.getElementById("mySelect2").selectedIndex = x;
}

オプションの順序が異なることが心配な場合は、 を使用できgetます。setvalue propertyobject

jsFiddle の例

if(document.form1.billingtoo.checked == true) {
        var x = document.getElementById("mySelect").value;
        var y = document.getElementById("mySelect").options;

        document.getElementById("mySelect2").value = x;       
}
于 2012-08-09T01:41:15.430 に答える