我的请求很简单,我有一个登录表单。我们在登录表单上有一个"保存用户名"选项。当页面加载时,如果用户名输入字段有值(他们已经保存了他们的用户名),我想自动聚焦于密码输入而不是用户名输入。
下面是我目前没有工作的jQuery:
$(document).ready(function() {
if($('#username').val() != ''){
$('#p').focus();
}
});
当前没有任何事情发生,没有控制台错误,#username输入保持聚焦或突出显示。
关于如何关注输入字段,以便用户可以开始自动输入,有什么想法吗?
将其移出$(document).ready()
,使用:
$(window).load(function() {
if($('#username').val() != ''){
$('#p').focus();
}
});
问题解决了。谢谢你指出时间问题。
我需要将脚本包装在"set timeout"函数中。下面是最终的工作脚本:
$(document).ready(function() {
if($('#username').val() != ''){
setTimeout(function () {
$('#p').focus();
}, 50);
}
});
- 需要指定用户是否保存了用户名。
- 然后你必须看到保存的用户名。
- 然后关注密码字段
这是你的代码
var saveduser="piyush"; //get username from saved fields
$(window).ready(function(){
if(saveduser!="")
{
$("#user").val(saveduser);
$("#pass").focus();
}
});
这是我创建的小提琴
http://jsfiddle.net/piyushkmr/86XxN/1/
您可以使用javascript cookie或php设置变量saveduser
为用户名