日期:2014-05-16  浏览次数:20369 次

求一自动提交的JS思路
有二输入框A 和 B
当A输入完成时,有没有办法,让它五秒后自动提交(五秒的过程就是让它判断我是不是要输入B,如果B不输入了就提交),而不是手动按提交按钮

当A输入完成,再输入B的时候,不要执行A的五秒自动提交,等待B完成输入再提交,这个我可以简单点,用手动提交


问题的关键在于,怎么做到当我要输入B时,停止A的自动提交呢?
大家给点思路,有热心的朋友直接出代码,就更感谢了

------解决方案--------------------
HTML code
<script>
var timer
function post(){document.frm.submit();}
</script>
<form  method='get' name='frm'>
a:<input type="text" onblur="timer=setTimeout('post()',5000);"/><br/><--更正下这里,忘记赋值了-->
b:<input type="text" onfocus="clearTimeout(timer)" onblur="setTimeout('post()',5000);"/><!--focus时清除计时器-->
</form>

------解决方案--------------------
IE的话可以onpropertychange
FF就比较麻烦了,要绕一个大圈子才能做出和ie的onpropertychange差不多的功能来
------解决方案--------------------
1、FF下 oninput 只对手工输入做出反应,对粘贴或程序向文本框写数据无效,要想再FF下实现onpropertychange()很麻烦
当然LZ不考虑兼容就没什么问题了,呵呵 

2、正如LS所说,B的onfocus="clearTimeout(timer)"不应该受到影响的
------解决方案--------------------

var timeCount=0;
function onMouseInText(flag)
{
var flag=true;
flag=flag;
timeCount++;
if(timeCount==5)
{
if(document.all.B.value==""&&flag==true){
document.all.form1.submit();
}
else{
}
}
timeCount=0;
setTimeout('onMouseInTextA()',1000);
}


<form name="form1">
<input name="A" type="text" onClick="onMouseInText(true)">
<input name="B" type="text" onClick="onMouseInText(false)">
</form>
不知道这样你满意不
------解决方案--------------------
"setTimeout('submit()',5000);