单击选择使用jquery时如何刷新下拉列表?

时间:2015-10-06 09:38:44

标签: javascript jquery asp.net-mvc html-helper

我在mvc中有一个下拉

@Html.DropDownList(
  "Name", 
  new SelectList(Model.Product, "Value", "Text"), 
  string.Concat("-- ", "Please select the item", " --"), 
  new { id = "Product", Class = "form-control" }
)

我动态填写下拉列表。它工作正常。一切正常。当我更改项目时,我使用jquery onchange方法执行我想要的操作并刷新下拉列表。但我想在用户点击&#34时刷新下拉菜单;请选择项目"。当我点击请选择onchange方法未被调用。我怎么能这样做?

$DropDown.on("change", function () {


            //Here i perfome action
        });

3 个答案:

答案 0 :(得分:0)

$(document).ready(function(){

    $('#dropdownlistname').change(function(e){
       // Your event handler
    });

    // And now fire change event when the DOM is ready
    $('#dropdownlistname').trigger('change');
});

更多信息Here

修改

您应该为on功能提供一个选择器:

$(document).on('change', 'input', function() {
  // Does some stuff 
});

在这种情况下,它会按预期工作。以下是Fiddle使用on函数

答案 1 :(得分:0)

您可能希望提取“onchange”函数以便重用它。像这样的东西

var changeCallback = function(e) {
  // chage logic
}
$("#dropdownlistname").on("change", changeCallback);
$("#dropdownlistname").on("click", changeCallback);

答案 2 :(得分:0)

user2052156的回答看起来不错,但是如果你想要点击'只有在第一次调用后才能删除点击处理程序: -

$DropDown.on('click change', function(){

    //Here i perfome action

    $(this).off('click');
});

Fiddle