获取select的label值

来源:互联网 发布:淘宝的类目 编辑:程序博客网 时间:2024/05/02 04:50

       在有些情况下,我们需要获取下拉框显示的值,但是通常在后台我们通过request.getParameter("id")方法获取的只是下拉框的value值。这时我们需要通过一些别的方法来获取下拉框的label值,我不太清楚在后台能不能通过其他的方法直接获取,我一般的处理方法是:在前台也页面中获取后再传到后台,而通过前台获取,大家都肯定会想到的是通过js来获取。没错,就是通过js来获取。
处理方法如下:
jsp页面:
   ...
   ...
   ...
   <select id="sel" onchange="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")的方法获取这个值。

原创粉丝点击