这是我目前的代码:
jQuery(document).ready(function($) {
$("#edit-name").change(function() {
$("#Membership_UserName").val($(this).val());
});
$("#edit-pass-pass1").change(function() {
$("#Membership_PassWord").val($(this).val());
});
$("#edit-pass-pass2").change(function() {
$("#.Verify_Password").val($(this).val());
});
});
一切正常,除了,用于更新ID为.Verify_Password
的元素的值。这个原因对我来说非常明显(jQuery在看到#
和.
彼此相邻之后感到困惑)但是这可能是错的......
无论如何,ID都无法更改,因为它被发送到远程端点,并且需要在此端匹配。
所以我的问题是:有没有办法告诉jQuery .Verify_Password
是一个ID(而不是一个类)?
答案 0 :(得分:2)
是的,你可以通过逃避它来做到这一点。
$('#\\.Verify_Password');
或强>
$("[id='.Verify_Password']")
答案 1 :(得分:1)
试试$("#\\.Verify_Password").val($(this).val());
或阅读jQuery selector value escaping
答案 2 :(得分:1)
你应该双击它
$("#\\.Verify_Password").val($(this).val());
检查此jQuery doc以获取更多信息,几个例子 -
// Does not work
$("#some:id")
// Works!
$("#some\\:id")
// Does not work
$("#some.id")
// Works!
$("#some\\.id")
答案 3 :(得分:1)
如果您指定选择器#
,那么它将是ID
,或者如果您指示选择器.
,那么它将是CLASS
。
如果您不知道它是id还是类,请尝试
$("#edit-pass-pass2").change(function() {
$("#\\.Verify_Password").val($(this).val());
});