0
  1. ユーザーがSPACEテキストフィールドにヒットしたとします。選択ボックスの値を確認したい。input.addEventListener('keydown', function(e)...-hitting-pointを追跡するために使用しSPACEますが、selectブロックの値を取得するにはどうすればよい<select id='topic'><option value="hello"></option> ...</section>ですか?

  2. 選択したインデックスの値をどのように確認できますか?なぜ以下ではないのか理解できません。

        var el = document.getElementById("topic");
        var topicValue = el.options[el.selectedIndex].value;
    
        // PROBLEM: Won't do anything (despite inside <script> -tags)
        window.alert(topicValue);
    

ここで、topicはselect<select id="topic"[^>]*>[^<]*</select>です。

4

2 に答える 2

0

あなたが見ることができる多くのイベントがあります。

これには、それらすべてのリストがあります http://www.w3schools.com/tags/tag_select.asp

onkeydownおよびonmousedownは、onchange(ユーザーがEnterキーを押す)イベントの前にアラートを出します

于 2011-01-29T01:32:30.050 に答える
0

イベントはselectで機能し、オプションではなく、スクリプトに条件付きで機能します。

<html>
<body>

<script>
        function alertMe(option){
                if(option == "saab"){
                        window.alert("you clicked saab in selec!");
                        document.getElementById("txt").value='saab!';
                }
        }
</script>


<select onChange="alertMe(this.value);">
  <option value="volvo">Volvo</option>
  <option value="saab">Saab</option>
  <option value="m"> Mercedes</option>
  <option>Audi</option>
</select>

<input type="text" id="txt" value="change me"></input>

</body>
</html>

[更新されたものへの回答]

  1. document.getElementById('topic').options.selectedIndexまたはで選択にアクセスできますmySelect.options[selectedIndex].value(私では機能しません)。そして、どうやらあなたはあなたが参照できるフォームを作成することができましたdocument.forms['topic'].elements[id]が、これについてはよくわかりません。もっと。
  2. イライラする@Kosh!を実行してから、をキーとしてdictionary = {0:"topic", 1:"hello",...,n:"topic_{n}"}使用し、値を忘れてください。getElementById('topic').selectedId解決されませんが、丸められます。

[更新]私はそれを解決したと思います、ただel.valueselectedIndex必要ありません:

<html>
<body>

<script>

function printSelectValue()
{
        var el = document.getElementById("selectOne");
        alert(el.value);

}
</script>


<select id="selectOne" onChange="printSelectValue()"> 
<option value="volvo">Volvo</option>
<option value="saab">Saab</option>
<option value="m"> Mercedes</option>
</select>

</body>
</html>
于 2011-01-29T11:31:34.190 に答える