jquery提交无法使用$ .post回调

时间:2016-10-27 15:23:49

标签: javascript jquery html form-submit

我有这样的jQuery代码。

$("#continue").click(function () {
  var policy = { policy: context.model, returnUrl : context.returnUrl };
  $.post(context.continueUrl, ko.toJS(policy))
  .done(function(data) {
    if (data.response === "success") {
      if (context.continueType === "POST") {
        $("#redirect").submit();
      }
      window.location.href = context.returnUrl;
    } else {
      window.location.href = context.errorUrl;
    }
  });
});

问题是$("#redirect").submit();应该使用POST发送表单。但是将其作为GET方法发送。如果我从控制台调用它,它可以正常工作。

形式:

<form id="redirect" action="MYURL" method="post" style="display: none;">
  <input type="hidden" name="data" value="XXXXXXXXXXXXXX">
</form>

知道为什么会这样吗?

1 个答案:

答案 0 :(得分:0)

我只是完全愚蠢。 应该是。

if (context.continueType === "POST") {
    document.getElementById("redirect").submit();
} else { //This else was missing so it did redirect instead
    window.location.href = context.returnUrl;
}