提交表单后jQuery页面重定向

New*_*ser 4 javascript forms jquery

我有一个这样的表格

<form id="add-to-cart" name="my-form" action="http://www.example.com" method="post">
  <div class="row flat">
    <input type="hidden" name="cartkey" value="">
    <input type="hidden" name="id" value="2">
    <button type="submit"  value="submit" data-value="2" data-name="id">Buy Now</button>
  </div>
</form>
Run Code Online (Sandbox Code Playgroud)

为了保存表单,我使用了 jQuery。所以现在我的代码看起来像这样

 <script type="text/javascript">
    jQuery(document).ready(function() {
      jQuery('button').click(function(){
        var Value = jQuery(this).attr('data-value');
        jQuery('[name="id"]').val(Value);
        jQuery('#add-to-cart').submit();
        window.location = "http://www.page-2.com";
        });
    });
  </script>
Run Code Online (Sandbox Code Playgroud)

但是在这里提交表单后不会重定向到另一个页面(http://www.page-2.com)。那么有人可以告诉我提交表单后如何重定向表单吗?

更新 对不起,我不能使用ajax。我想以简单的形式提交表单。

Zah*_*med 6

您可以在操作中处理此问题,onSubmit()从服务器代码调用将其重定向到您想要的页面。

或者您需要使用 ajax post() 调用,它会在调用完成时为您提供 onSuccess 和 onFailure 事件。像这样的东西:

$('#add-to-cart').submit(function() {
    $.ajax({
        type: 'POST',
        url: $(this).attr('action'),
        dataType: 'json',
        success: function(json) {
           window.location.href = "http://www.page-2.com";
        }
    })
    return false;
});
Run Code Online (Sandbox Code Playgroud)