Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript AJAX使用POST重新加载页面_Javascript_Ajax - Fatal编程技术网

Javascript AJAX使用POST重新加载页面

Javascript AJAX使用POST重新加载页面,javascript,ajax,Javascript,Ajax,有人能告诉我如何用JavaScript刷新当前页面,修改或添加POST变量吗 为了清楚起见,我想在重新加载页面之前设置一些POST变量。通过使用jquery ajax,您可以重新加载页面 $.ajax({ type: "POST", url: "packtypeAdd.php", data: infoPO, success: function() { location.reload(); } }); 重新加载当前文档: <

有人能告诉我如何用JavaScript刷新当前页面,修改或添加POST变量吗


为了清楚起见,我想在重新加载页面之前设置一些POST变量。

通过使用jquery ajax,您可以重新加载页面

$.ajax({
    type: "POST",
    url: "packtypeAdd.php",
    data: infoPO,
    success: function() {   
        location.reload();  
    }
});

重新加载当前文档:

 <script type="text/javascript">
 function reloadPage()
 {
   window.location.reload()
 }
 </script>

函数重载页面()
{
window.location.reload()
}

如果要刷新整个页面,使用AJAX是没有意义的。使用普通Javascript在该页面中发布表单元素。确保表单提交到同一页面,或者表单提交到一个页面,该页面随后重定向回该页面

要使用的Javascript(始终使用myForm.php):


假设您的表单位于myForm.php上: 方法1:

<form action="./myForm.php" method="post" id="myForm">
    ...
</form>

...

方法2:

myForm.php:

function submitform()
{
  document.getElementById('myForm').submit();
}
<form action="./myFormActor.php" method="post" id="myForm">
    ...
</form>

...
myFormActor.php:

<?php
    //all code here, no output
    header("Location: ./myForm.php");
?>

有一个带有
post
而不是
ajax

var jqxhr = $.post( "example.php", function() {
  alert( "success" );
})
  .done(function() {
    alert( "second success" );
  })
  .fail(function() {
    alert( "error" );
  })
  .always(function() {
    alert( "finished" );
  });

是的,但是我需要先设置一些post变量。有可能吗?为什么你想通过POST方法你也可以,我正在考虑这个。我知道通过设置GET变量可以很好地实现这一点,但我只想知道是否可以设置POST变量。这取决于jQuery,因为OP只使用JavaScript标记了它,所以请确保在回答中引用jQuery。如果您提到jQuery函数,那么发布到jQueryAPI文档的链接也很有用。你也可以使用
post()
而不是用正手的
ajax()
来解决这个问题。为了清晰起见,我根据你在答案下的评论对你的问题进行了编辑。@StuperUser我知道我可以用GET variables by window.location.href来实现,但我想用一个post变量来实现这一点,但我不知道如何实现。我认为使用XMLHttpRequest不是一个很好的选择。正如@Pranav Hosangadi所说的,如果要重新加载整个页面,为什么要考虑XHR而不是普通的HTTP请求?XHR的全部要点是,您不必重新加载整个页面。是的,我已经看到了这种可能性,但我想是否可以编写类似XMLHttpRequest.setRequestHeader(“名称”、“值”);如果要在帖子中添加附加内容,一种方法是在提交表单之前向表单添加新的隐藏表单元素。