首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

JS如何做到让表单提交时不跳转!还有如何设置跳转不可用呢

2012-04-13 
JS怎么做到让表单提交时不跳转!还有怎么设置跳转不可用呢?提交的时候有先要做一些事情,等到这些事情完成之

JS怎么做到让表单提交时不跳转!还有怎么设置跳转不可用呢?
提交的时候有先要做一些事情,等到这些事情完成之后才跳转!

就像CSDN 发帖 跟登陆 那样的效果!

[解决办法]
用submit按钮提交可以为表单注册onsubmit事件,进行验证等操作,返回return false;来阻止表单提交。
return true;进行表单提交。
用button按钮onclick事件提交表单可以在单击事件中进行验证等操作,如果需要提交表单就用form.submit()进行提交就行了。否则就不提交表单。
也可以用ajax提交。根据返回值判断是否跳转。
[解决办法]
我这个例子没有在新弹出层或者新弹出页面显示登录框,这里做个例子在本页显示,实际应用的时候应该改成更适合的形式

HTML code
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head>    <title></title>    </head><body><script type="text/javascript" src="jquery-1.6.4.min.js" ></script>  <form id="form1" action="savenote.asp" method="post" onsubmit="return checklogin();" > <textarea rows="10" cols="100" name="note" ></textarea> <input type="submit" value="保存发言" /> </form> <script type="text/javascript" >     function checklogin() {         jQuery.ajax({             url: 'checklogin.asp?' + Math.random(),             success: function(result) {                 alert(result);                 if (result == "1") {                     alert("你已经登录,可以继续提交");                     document.getElementById("form1").submit();                 } else {                     alert("你没有登录,请登录");                     $("#login").show();                 }             },             async: false         });         return false;     } </script> <div id="login" style="display:none;"> 用户名<input /> 密码:<input /> <input type="button" value="登录" /> </div></body></html> 

热点排行
Bad Request.