当我使用
时,此功能如何适用于所有文本框 $('#date, #date2').blur(function () {
但不是我用的时候
$('#date').blur(function () {
?
MVC查看器:
@Html.TextBoxFor(x => x.ArrivalDateStart, new { id = "date" })
@Html.TextBoxFor(x => x.ArrivalDateEnd, new { id = "date" })
@Html.TextBoxFor(x => x.OtherDateEnd, new { id = "date" })
@Html.TextBoxFor(x => x.OtherDateEnd, new { id = "date" })
使用Javascript:
$(function () {
$('#date, #date2').blur(function () {
var date = $(this).val();
var result = "";
if (date.length === 8) {
result = result += date.substring(0, 4) + "-" + date.substring(4, 6) + "-" + date.substring(6, 8);
$(this).val(result);
$(this).blur()
}
});
});
答案 0 :(得分:11)
您的元素应具有唯一ID。将其转换为类属性而不是ID属性:
@Html.TextBoxFor(x => x.ArrivalDateStart, new { @class = "date" })
并选择它:
$('.date').blur(function () {
答案 1 :(得分:0)
首先,对于一个元素,id必须是唯一的,因此您不能只为所有元素提供new { id = "date" }
。但是你可以给它们像new { @class = "date" }
这样的className,当你将你的选择器改为“.date”时,它应该可以解决问题。
答案 2 :(得分:0)
您不能拥有超过1个元素的相同ID! 如果您设置ID,如date1,date2,date3,...,您可以创建一个选择器,如:
$('textarea[id^="date"]')