在有些情况下,我们需要获取下拉框显示的值,但是通常在后台我们通过request.getParameter("id")方法获取的只是下拉框的value值。这时我们需要通过一些别的方法来获取下拉框的label值,我不太清楚在后台能不能通过其他的方法直接获取,我一般的处理方法是:在前台也页面中获取后再传到后台,而通过前台获取,大家都肯定会想到的是通过js来获取。没错,就是通过js来获取。
处理方法如下:
jsp页面:
...
...
...
<select id="sel" οnchange="getLabel(this)">
<option value="0"></option>
<option value="1">one</option>
<option value="2">two</option>
<option value="3">three</option>
<option value="4">four</option>
<option value="5">five</option>
</select>
...
...
...
js代码部分:
<script language="javascript" type="text/javascript">
function getLabel(obj)
{
var selValue = "";
for(i=0; i<obj.length; i++) // 这部分改进为:select标签自身就有selectIndex属性,所以不用遍历啦,直接:
{
if(obj[i].selected) selValue = obj[selectIndex].innerText吧
{
selValue = obj[i].innerText;
break;
}
}
return selValue ;
}
</script>
考虑到label值中可能会是中文的问题,所以在向后台传输的时候我们将js取得的值通过隐藏控件传到后台,在后台我们就可以通过经常用的request.getParameter("id")的方法获取这个值。
获取select的label值
最新推荐文章于 2024-09-01 11:22:37 发布