<html>
<head>
<script type="text/javascript">
function upperCase(x)
{
var y=document.getElementById(x).value
document.getElementById(x).value=y.toUpperCase()
}
 function ceshi(x){
 alert(x);
 }
</script>
</head><body>
<form id="myform">
输入您的姓名:
<input type="text" id="fname" onchange="upperCase(this.id)" />测试:<select id="ceshi" name="ceshi" style="width: 80px;" onchange="ceshi(document.myform.ceshi.options[selectedIndex].value);">
     <option value="">请选择</option>
<option value="1">Item 1</option>
<option value="2">Item 2</option>
<option value="3">Item 3</option>
     </select>
</form>
</body>
</html>
如上面的代码,select的onchange就无法触发啊,为什么呢?哪里写的不对?

解决方案 »

  1.   

    <select id="ceshi" name="ceshi" style="width: 80px;" onchange="alert(this.options[this.options.selectedIndex].value);">
     <option value="">请选择</option>
    <option value="1">Item 1</option>
    <option value="2">Item 2</option>
    <option value="3">Item 3</option>
     </select>
    </select>
      

  2.   

    <script type="text/javascript">
    function upperCase(x){
    var y=document.getElementById(x).value
    document.getElementById(x).value=y.toUpperCase()
    }
      function ceshi(x){
          alert(x);
      }
    </script>
    </head><body>
    <form id="myform">
    输入您的姓名:
    <input type="text" id="fname" onchange="upperCase(this.id)" />测试:<select id="cesh" style="width: 80px;" onchange="ceshi(this[selectedIndex].value);">
                 <option value="">请选择</option>
                    <option value="1">Item 1</option>
                    <option value="2">Item 2</option>
                    <option value="3">Item 3</option>
                 </select>
    </form>
     这样试试   id名最好不要和方法名一样了  有时候浏览器分不清了