我有一个表单,其中点击该按钮就有一个按钮我正在调用一个javascript函数,其中我显示为3 .. 2 .. 1种效果然后我返回true。
但是在显示3后,只有返回true才会被执行并且表单正在提交。
如何在运行脚本之前停止表单提交。
编辑:
function jsFun()
{
timerCount(3);
//Calling the Timer Function.
}
var t;
function timerCount(cDown)
{
if (cDown == 0)
{
clearTimeout(t);
return true;
}
$('#<%= mainContainer.ClientID %>').html(cDown);
cDown = cDown - 1;
t = setTimeout('timerCount(' + cDown + ')', 1000);
}
<asp:Button ID="btnStarts" runat="server" Text="Start" OnClientClick="return jsFun();" OnClick="btn_click" />
答案 0 :(得分:1)
如果'submit'按钮返回true,将提交表单。
那么答案就是返回false,然后执行'倒计时'(因为它可能是异步的),并通过'form.submit();'手动提交表单。
答案 1 :(得分:0)
我已经稍微修改了代码而不是像这样使用ASP.NET:
function jsFun() { timerCount(3); } var t; function timerCount(cDown) { if (cDown == 0) { clearTimeout(t); return true; } document.getElementById('testbutton').value = cDown; cDown = cDown - 1; t = setTimeout('timerCount(' + cDown + ')', 1000); }
这样称呼:
<input id="testbutton" name="testbutton" type="button" value="Test me!" onclick="return jsFun();" />
与宣传的完全一样!我想说这行有问题:
$('#<%= mainContainer.ClientID %>').html(cDown);
希望它有所帮助。