Uncaught Error: Syntax error, unrecognized expression in jQuery 1.12.4 from 1.7.1js
Uncaught Error: Syntax error, unrecognized expression in jQuery 1.12.4 from 1.7.1js
$("body").on("click", "$[id *= ddlHour]",
function () {
ValidateDate();
}
);
这在 jQuery 1.7.1 中工作正常,但当我升级到 1.12.4 时出现以下错误:
Uncaught Error: Syntax error, unrecognized expression: $[id *= ddlHour]
我试过了
$("body").on("click", "$('[id*=\"ddlHour\"]')",
function () {
ValidateDate();
}
);
但我仍然遇到同样的错误。有谁知道出了什么问题?
我很惊讶在 jQuery 的旧版本中工作,因为选择器无效。前导 $
不应该存在。只是:
$("body").on("click", "[id *= ddlHour]",
// ^−−−−−−−−−−−−−−−−−−−−− No $ here
function () {
ValidateDate();
}
);
the CSS specification 中的更多内容。
旁注:除非您明确要阻止 ValidateDate
接收直接连接时它将接收的事件对象,否则 and/or 想要阻止 ValidateDate
返回 false
要停止事件传播,你可以这样写:
$("body").on("click", "[id *= ddlHour]", ValidateDate);
$("body").on("click", "$[id *= ddlHour]",
function () {
ValidateDate();
}
);
这在 jQuery 1.7.1 中工作正常,但当我升级到 1.12.4 时出现以下错误:
Uncaught Error: Syntax error, unrecognized expression: $[id *= ddlHour]
我试过了
$("body").on("click", "$('[id*=\"ddlHour\"]')",
function () {
ValidateDate();
}
);
但我仍然遇到同样的错误。有谁知道出了什么问题?
我很惊讶在 jQuery 的旧版本中工作,因为选择器无效。前导 $
不应该存在。只是:
$("body").on("click", "[id *= ddlHour]",
// ^−−−−−−−−−−−−−−−−−−−−− No $ here
function () {
ValidateDate();
}
);
the CSS specification 中的更多内容。
旁注:除非您明确要阻止 ValidateDate
接收直接连接时它将接收的事件对象,否则 and/or 想要阻止 ValidateDate
返回 false
要停止事件传播,你可以这样写:
$("body").on("click", "[id *= ddlHour]", ValidateDate);