jquery:选择列表框中的项目并触发更改

时间:2013-06-07 06:02:28

标签: jquery html asp.net-mvc

在我更改代码中的选定值后,我似乎无法在列表框上触发更改。如果实际单击列表框,则更改功能很有用。我搜索了论坛,似乎没有一个解决方案适合我。示例代码如下。我还设置了一个jsfiddle here。我希望它在代码运行时进入更改功能。

<form>
  <select class="selectOneListBox" id="CompanyId" multiple="multiple" name="CompanyId">        
    <option value="1">Test</option>
    <option value="2">Test 2</option>
    <option value="3">Test</option>
  </select>
<form>
$(function () {
  id = 3
  if (id > 0) {
    alert(id)
    $('#CompanyId').val(id).change();
  }
}); 

$("#CompanyId").change(function () {
  alert("change");
});

1 个答案:

答案 0 :(得分:4)

您需要将.change绑定移动到文档就绪块中。我在你的jsfiddle中改变了它,当代码触发它时它会发出'change',而不是点击时。 http://jsfiddle.net/65wHW/2/

$(function () {
    $("#ScriptId").change(function () {

       alert("change");
    });

    id = 8
    if (id > 0) {
       alert(id)
       $('#ScriptId').val(id).change();
    }
});