JQuery 焦点/模糊事件帮助
$(document).ready(function() {
$('#username').focus(function() {
$(this).val('');
})
$('#username').blur(function() {
var l = $(this).val.length;
if (l == 0) {
$(this).val('Username');
}
})
});
上面的代码应该做的是在聚焦时清空 #username 输入字段的值,并在失去焦点时填写用户友好的“用户名”,以防它仍然为空。
但第二部分不起作用(我认为我使用的 if 条件存在一些问题?)。
$(document).ready(function() {
$('#username').focus(function() {
$(this).val('');
})
$('#username').blur(function() {
var l = $(this).val.length;
if (l == 0) {
$(this).val('Username');
}
})
});
What the above code is supposed to do is empty the value of #username input field when focused and fill in the user friendly "Username" there when it loses focus in case it's still empty.
The second part doesn't work though (I think there is some problem with the if condition I'm using?).
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
对于模糊函数的第二行,尝试
另外,尝试警告该值以查看是否正常。
For the second line of your blur function try
Also, try alerting this value to see if it is finding it okay.
使用
$(this).val().length
代替。$(this).val
仅引用该函数。以及函数的length
属性 是预期参数的数量,而不是该函数返回值的长度。Use
$(this).val().length
instead.$(this).val
only references the function. And thelength
attribute of a function is the number of expected arguments and not the length of the return value of that function.