Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/415.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/291.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如果用户名有值,则关注密码字段_Javascript_Php_Jquery_Html - Fatal编程技术网

Javascript 如果用户名有值,则关注密码字段

Javascript 如果用户名有值,则关注密码字段,javascript,php,jquery,html,Javascript,Php,Jquery,Html,我的要求很简单,我有一个登录表单。我们在登录表单上有一个“保存用户名”选项。当页面加载时,如果用户名输入字段有值(他们保存了用户名),我希望自动关注密码输入,而不是用户名输入 下面是我目前使用的jQuery,它不起作用: $(document).ready(function() { if($('#username').val() != ''){ $('#p').focus(); } }); 目前什么

我的要求很简单,我有一个登录表单。我们在登录表单上有一个“保存用户名”选项。当页面加载时,如果用户名输入字段有值(他们保存了用户名),我希望自动关注密码输入,而不是用户名输入

下面是我目前使用的jQuery,它不起作用:

    $(document).ready(function() {
            if($('#username').val() != ''){
                $('#p').focus();
            }
    });
目前什么都没有发生,没有控制台错误,#用户名输入保持焦点或突出显示


关于如何关注输入字段以便用户可以自动开始在那里键入内容,您有什么想法吗?

问题解决了。感谢plalx指出时间问题

我需要将脚本包装在一个“设置超时”函数中。下面是最后的工作脚本

  $(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();
            }
        });
    
    这是我创作的小提琴

    您可以使用javascript cookies或php将变量
    saveduser
    设置为用户名。

    将其从
    $(文档)中取出。ready()
    ,使用:

    $(window).load(function() {
        if($('#username').val() != ''){
            $('#p').focus();
        }
    });
    

    你准备好文件了吗?如果没有,就把它包起来,看魔术。你能在一个地方创造出一个可复制的小提琴,让我们看到它的作用吗?你说的“不工作”是什么意思?你预计会发生什么?会发生什么?我相信这是一个简单的时间问题<代码>焦点有时非常反复无常。试着给浏览器多一点时间
    setTimeout(函数(){/*set focus*/},50)元素是否可见?将其更改为window load.setTimeout是个坏主意。。。这是一个很好的解决方案,谢谢。这比我现在需要的要多,但做得很好。这是最好的解决方案。谢谢