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