填写完最后一个输入后,jquery焦点和自动提交

时间:2015-12-08 09:53:56

标签: javascript jquery html

我有两种情况,jquery,

我有两个文本框(名称,年龄),现在我需要做的是在年龄被禁用时自动聚焦名称onload,一旦用户键入名称输入,它将被禁用并切换为年龄文本框(启用和关注)。填充年龄文本框后,jquery将自动提交没有任何按钮

现在首先是,我可以禁用和启用文本框,但是当我把 document.name.focus() 无效时,我的意思是,焦点不起作用。第二件事是,我设法使用此代码进行自动提交

$(document).ready(function(){
    $('[name="age"]').blur(function(){
        if(this.value != ''){
            document.form.submit();
        }
    });
});

所以在填写完最后一个文本框后,它会自动提交,但问题是,每当我运行它时,我都会收到此错误“注意:未定义的索引:C:\ location中的名称”。

这是我的代码:

<script>
$(document).ready(function(){
	$('[name="age"]').blur(function(){
		if(this.value != ''){
			document.form.submit();
		}
	});
}); 

$(document).ready(function() {
  $('[name="name"]').blur(function() {
    var that = $('[name="age"]')[0];
    if (this.value != '') {
		this.focus();
      this.disabled = true;
      that.disabled = false;
    }
  });
});

function focusName(){	
	var count = document.form.name.value.length + 1;
	if(count <= 8){
		document.form.name.focus();
	}else{
		document.form.age.focus();
	}
}

function focusAge(){
	var count = document.form.age.value.length + 1;
	if(count <= 10){
		document.form.age.focus()		
	}else{
		document.form.submit();
	}
}
</script>
<fieldset>
<legend>Information </legend>
<form action="receive.php" method="post" name="form">
	name : <input type="text" name="name" onKeyUp="focusName();" maxlength="8"><br>
	Age : <input typr="text" name="age" disabled onKeyUp="focusAge();" maxlength="3"><br>
	<!--input type="submit"-->
</form>
</fieldset>

请帮助!!谢谢。

1 个答案:

答案 0 :(得分:0)

很少提示:在文本框中添加一些ID

示例:

name : <input type="text" id="name" name="name" onKeyUp="focusName();" maxlength="8"><br>
    Age : <input typr="text" id="age" name="age" disabled onKeyUp="focusAge();" maxlength="3">

关注名称onload(使用JQuery):

$(document).ready(function(){$("#name").focus();})

自动提交表单:

$("form :input").focusout(function(){

   $(this).each(function(){
    if($(this).val()=="" )
    {
      return false;
    }
  });
  $("form").submit();
});