Jquery 将事件绑定到具有相同名称的多个输入
在我的ASP MVC页面中,根据用户单选按钮组的选择,有四到五个不同的菜单可用。其中一些字段共享一个文本输入框,我需要将一个偶数绑定到该框。但是,事件仅在列表的第一个菜单中起作用。是否可以将同一事件绑定到共享同一名称的多个输入 jQueryJquery 将事件绑定到具有相同名称的多个输入,jquery,asp.net-mvc,asp.net-mvc-3,jquery-ui,Jquery,Asp.net Mvc,Asp.net Mvc 3,Jquery Ui,在我的ASP MVC页面中,根据用户单选按钮组的选择,有四到五个不同的菜单可用。其中一些字段共享一个文本输入框,我需要将一个偶数绑定到该框。但是,事件仅在列表的第一个菜单中起作用。是否可以将同一事件绑定到共享同一名称的多个输入 jQuery $('#LastName').change(function () { if ($('#LastName').val() == '') { $('#BankName').html(""); }
$('#LastName').change(function () {
if ($('#LastName').val() == '') {
$('#BankName').html("");
} else {
$.ajax({
type: 'GET',
url: '@Url.Action("GetBankName", "Agent")',
data: { routing: $('#RoutingNumber').val() },
success: function (data) {
$('#BankName').val(data);
$('#BankName').text(data);
}
});
}
});
ASP MVC
此HTML在加载时显示在页面上,但是一次只能看到一个字段集
<fieldset id="Enroll" style="width:380px; display: none;">
.
.
<div class="M-editor-label">
@Html.LabelFor(model => model.LastName)<span class="req">*</span>
</div>
<div class="M-editor-field">
@Html.TextBoxFor(model => model.LastName)
</div>
<fieldset id="ModT" style="width:380px; display: none;">
.
.
<div class="M-editor-label">
@Html.LabelFor(model => model.LastName)<span class="req">*</span>
</div>
<div class="M-editor-field">
@Html.TextBoxFor(model => model.LastName)
</div>
<fieldset id="ModA" style="width:380px; display: none;">
.
.
<div class="M-editor-label">
@Html.LabelFor(model => model.LastName)<span class="req">*</span>
</div>
<div class="M-editor-field">
@Html.TextBoxFor(model => model.LastName)
</div>
.
.
@LabelFor(model=>model.LastName)*
@Html.TextBoxFor(model=>model.LastName)
.
.
@LabelFor(model=>model.LastName)*
@Html.TextBoxFor(model=>model.LastName)
.
.
@LabelFor(model=>model.LastName)*
@Html.TextBoxFor(model=>model.LastName)
只需更改jQuery选择器
$('input[name=your-input-name]')
而不是:
$('#LastName')
以及活页夹,以涵盖未来添加的输入:
$('input[name=your-input-name]').on("change", function () { });
只需更改jQuery选择器
$('input[name=your-input-name]')
而不是:
$('#LastName')
以及活页夹,以涵盖未来添加的输入:
$('input[name=your-input-name]').on("change", function () { });
您正在使用ID,但它们应该是唯一的
这就是它不起作用的原因,因为在执行$(“#LastName”)
时,jquery使用document.getElementById
,并且总是返回单个元素
改用类。如果您确实需要多个id(顺便说一句,这是无效的HTML),您可以(但我不推荐)使用$('[id=LastName]')
您使用的是id,但它们应该是唯一的
这就是它不起作用的原因,因为在执行$(“#LastName”)
时,jquery使用document.getElementById
,并且总是返回单个元素
改用类。如果您确实需要多个id(顺便说一句,这是无效的HTML),您可以(但我不推荐)使用$('[id=LastName]')
太好了!7年前你救了我一天:)太好了!7年前你救了我的命:)