js获取select选中的值

jsp代码:

<select id="tjn" >
<option value="0" selected="selected">请选择</option>
 <c:forEach items="${alllist}" var="i"  varStatus="status">
<option value=${status.index+1 }>${i}</option>
</c:forEach>
</select>

Js代码

  <script type="text/javascript">
  var my=document.getElementById("tjn");
	 //1:拿到select对象:

    //2:拿到选中项的索引:
    var index=my.selectedIndex ; // selectedIndex代表的是你所选中项的index
    //3:拿到选中项options的value: 
    var ss=my.options[index].text
    alert(ss);
  </script>

我在做这个功能的时候,js一直获取不到select的id;
用浏览器的debug调试,显示null;
后来百度了,有人说:
页面加载的顺序是自上而下,如果你的js在

被加载之前就执行,那是取不到的。
有两种方法可以规避:
1、将写到页面的底部
2、将你需要执行的代码放到一个函数中,等窗口加载完毕的事件去触发它
例:
function init() { // 你的代码 };
window.onload = init;
然后就解决了;

猜你喜欢

转载自blog.csdn.net/qq_37591637/article/details/82899328