表单提交jquery后重定向

时间:2013-07-25 11:25:33

标签: jquery html redirect

我必须提交一个带有target = _blank的表单,然后将该页面重定向到其他页面。

HTML

<form id="registration_form" name="registration_form" method="post" action="actionurl" target="_blank">
    <input type="button" name="submit" id="submit" value="Submit" />
</form>

JQUERY

$(document).ready( function()
{
   $('#registration_form').submit( function(e)
   {
      var flag=validate();
      if(flag)
          $(location).attr('href',redirectionurl);
      return flag;
   });

   $("#submit").click(function(){
      $('#registration_form').submit(); // this triggers the submit event
   });
});

如果我将按钮类型更改为SUBMIT表单按照验证标志提交,但重定向不起作用。

如果我使用BUTTON而不是提交重定向,但表单没有提交。

我错了。帮助

谢谢。

1 个答案:

答案 0 :(得分:0)

我认为你这样做很难,因为你将目标定义为_blank,但是你稍后提交论坛,所以我建议你在服务器端而不是jquery上进行验证。 HTML代码看起来应该是这样的:

<form id="registration_form" name="registration_form" method="post" action="actionurl" target="_blank">
    <input type=hidden name="flag_input" value="false">
    <input type="button" name="submit" id="submit" value="Submit" />
</form>

和jquery代码:

$(document).ready( function()
{
   $('#registration_form').submit( function(e)
   {
      var flag=validate();
      if(flag)
          $("#flag_input").val("true")
   });

   $("#submit").click(function(){
      $('#registration_form').submit(); 
   });
});

然后服务器获取flag_input - 如果是true,它将重定向,如果不是,用户将不得不再次填充论坛。如果您根本不想重定向,可以使用ajax。

修改 在服务器端:(我不知道你使用什么语言,但基本就是那样:)

if(flag_input == true) - 生成PDF并重定向到X

else - 重定向到Y(论坛页面)

如果有帮助,请告诉我。 古德勒克!