设置一个等于当前所选选项的变量

时间:2015-08-12 18:19:09

标签: javascript html

的javascript:

function read() {
  var x =  document.getElementById("selectedcust").options[document.getElementById("selectedcust").selectedIndex].value;
  console.log(x);
}

HTML:

<select  id="selectedcust"  style="position: absolute; top:-8px;left: 80px;" onchange="read()">

基本上我希望变量x等于当前所选的选项。但是,无论何时更改所选项目,该变量都不会更改。

编辑:对于那些也在尝试这样做的人,请注意我的上述代码是否有效。问题出在其他地方。

2 个答案:

答案 0 :(得分:2)

根据Sachin Kadam所提出的建议,你可以通过传递“this”来大大缩短这一句话。

 <select  id="selectedcust"  style="position: absolute; top:8px;left: 80px;" onchange="read(this)">
     <option>aaaaaaa</option>
     <option>bbbbbbb</option>
     <option>ccccccc</option>
     <option>ddddddd</option>
     <option>eeeeeee</option>
 </select>
<script>
         function read(e) {
            var x =  e.options[e.selectedIndex].value;
             console.log(x);
            }
</script>

http://jsfiddle.net/5oLrwkxm/1/

答案 1 :(得分:0)

请检查以下代码。我认为有一些脚本引用错误。 因为没有定义读取函数的抛出错误。您需要在</body>代码之前加入脚本。

<body>
 <select  id="selectedcust"  style="position: absolute; top:8px;left: 80px;" onchange="read()">
     <option>aaaaaaa</option>
     <option>bbbbbbb</option>
     <option>ccccccc</option>
     <option>ddddddd</option>
     <option>eeeeeee</option>
 </select>
<script>
         function read() {
            var x =  document.getElementById("selectedcust").options[document.getElementById("selectedcust").selectedIndex].value;
             console.log(x);
            }
</script> 
</body>

http://jsfiddle.net/5oLrwkxm/