如何从下拉列表中选择特定值

时间:2013-03-19 09:29:40

标签: jquery jsp drop-down-menu jquery-selectors

我正在尝试从下拉菜单中选择一个值。 我的代码目前看起来像这样:

var pnam= $(this).parent().parent().find("td").eq(1).html().trim();
    $("#parentModule_name").find("option").each(function(){
          if ($(this).text()==pnam) {
              $(this).attr('selected','selected');
          }
    });

流进入内部循环,正确选择属性。但是没有达到预期的结果。 有趣的是,当我检查元素时,在我的页面上这是我得到的

<select id="parentModule_name" name="parentId">
                        <option value="0">Please Select</option>                                    
                                    <option value="12">Admin</option>




                                    <option value="13">Util</option>




                                    <option value="15" selected="selected">Vendor</option>




                                    <option value="16">Shubham</option>



                        </select>

所以你可以看到。正确选择值但未在页面上显示。 任何帮助,将不胜感激。 谢谢

4 个答案:

答案 0 :(得分:3)

标记(或至少它的选择部分)和脚本似乎正常工作:http://jsfiddle.net/7RGgA/

如果您在页面加载时执行此操作,请使用$(document).ready();

包装脚本
$(document).ready(function(){
   var pnam= $(this).parent().parent().find("td").eq(1).html().trim();
    $("#parentModule_name").find("option").each(function(){
          if ($(this).text()==pnam) {
              $(this).attr('selected','selected');
          }
    });
});

答案 1 :(得分:1)

另一种方法是过滤选项并简单地设置所选属性;

$('#parentModule_name > option')
    .filter(function() { return $(this).text() == pnam; })
    .prop('selected', true);

jsFiddle demo

答案 2 :(得分:0)

$(document).ready(function(){

        $("#parentModule_name").change(function () {
              var temp=  $(this).find("option:selected").text();
              alert(temp);
               });
        });

答案 3 :(得分:-1)

试试这个

$(function(){
      $('#parentModule_name')
      .find('option[text="'+ pnam +'"]')
      .attr('selected','selected');
});