Javascript 在java脚本中使用post数组传递数据

Javascript 在java脚本中使用post数组传递数据,javascript,php,Javascript,Php,在函数中执行后,我尝试从A.php加载B.php,并在同一时间内使用post数组将一些数据从A.php传递到B.php 代码列表如下 A.php <script type="text/javascript"> alert_for_the_fucntion(); window.location.href = "B.php"; function alert_for_the_fucntion() { $.post("B.php", {ac

在函数中执行后,我尝试从A.php加载B.php,并在同一时间内使用post数组将一些数据从A.php传递到B.php

代码列表如下 A.php

<script type="text/javascript">
     alert_for_the_fucntion();
     window.location.href = "B.php";
     function  alert_for_the_fucntion() {
          $.post("B.php", {action: 'test'});
     }
</script>
<?php 
if (array_key_exists("action", $_POST)) {
    if ($_POST['action'] == 'test') {
        echo 'ok';       
    }    
}    
?>

提醒您注意功能();
window.location.href=“B.php”;
功能()的功能警报{
$.post(“B.php”,{action:'test'});
}
B.php

<script type="text/javascript">
     alert_for_the_fucntion();
     window.location.href = "B.php";
     function  alert_for_the_fucntion() {
          $.post("B.php", {action: 'test'});
     }
</script>
<?php 
if (array_key_exists("action", $_POST)) {
    if ($_POST['action'] == 'test') {
        echo 'ok';       
    }    
}    
?>

出于测试目的,我尝试在B.php中回显一些内容。但目前这并不奏效。我犯过什么错误吗?或者是否有任何可能的方法来做到这一点

您的代码执行以下操作:

  • 告诉浏览器导航到B.php(使用GET请求)
  • 使用XMLHttpRequest触发POST请求
  • POST请求可能会被取消,因为浏览器会立即离开页面(而XHR请求是异步的)。如果没有,则忽略响应。不管怎样,它都没有效果

    然后,您将在浏览器窗口中看到GET请求的结果(显然,GET请求不包括
    $\u POST['action']


    如果希望以编程方式生成POST请求并将结果显示为新页面,则需要提交表单

    不要使用
    位置
    。不要使用
    XMLHttpRequest
    (或者任何围绕它的东西,比如
    $.ajax


    如果要在JavaScript中处理结果,请执行以下操作:

  • 不要导航到其他页面(使用'location'删除该行)
  • done
    处理程序添加到Ajax代码中
  • e、 g

    您的代码执行以下操作:

  • 告诉浏览器导航到B.php(使用GET请求)
  • 使用XMLHttpRequest触发POST请求
  • POST请求可能会被取消,因为浏览器会立即离开页面(而XHR请求是异步的)。如果没有,则忽略响应。不管怎样,它都没有效果

    然后,您将在浏览器窗口中看到GET请求的结果(显然,GET请求不包括
    $\u POST['action']


    如果希望以编程方式生成POST请求并将结果显示为新页面,则需要提交表单

    不要使用
    位置
    。不要使用
    XMLHttpRequest
    (或者任何围绕它的东西,比如
    $.ajax


    如果要在JavaScript中处理结果,请执行以下操作:

  • 不要导航到其他页面(使用'location'删除该行)
  • done
    处理程序添加到Ajax代码中
  • e、 g

    试试这个:

    Javascript:

    <script type="text/javascript">
        window.onload = alert_for_the_fucntion;
        function  alert_for_the_fucntion() {
            $.post("B.php",
                   {
                     action: 'test'
                   },
                   function(data, status){
                      if(status=="success"){
                         alert(data);
                      }
                   }
            );
        }
    </script>
    
    
    window.onload=警告功能;
    功能()的功能警报{
    $.post(“B.php”,
    {
    行动:“测试”
    },
    功能(数据、状态){
    如果(状态=“成功”){
    警报(数据);
    }
    }
    );
    }
    
    PHP

    
    
    试试这个:

    Javascript:

    <script type="text/javascript">
        window.onload = alert_for_the_fucntion;
        function  alert_for_the_fucntion() {
            $.post("B.php",
                   {
                     action: 'test'
                   },
                   function(data, status){
                      if(status=="success"){
                         alert(data);
                      }
                   }
            );
        }
    </script>
    
    
    window.onload=警告功能;
    功能()的功能警报{
    $.post(“B.php”,
    {
    行动:“测试”
    },
    功能(数据、状态){
    如果(状态=“成功”){
    警报(数据);
    }
    }
    );
    }
    
    PHP

    
    
    什么是
    B.php.php
    ?有一个输入错误,应该是
    window.location.href=“B.php”
    而不是
    window.location.href=“B.php.php”
    为什么要重定向?问题是关于window.location.href的,这将使您在进行ajax调用之前更改页面。不工作,先生,我已经修改了what is
    B.php.php
    ?应该是
    window.location.href=“B.php”
    而不是
    window.location.href=“B.php.php”
    为什么要重定向?问题是关于window.location.href,它会让您在执行ajax调用之前更改页面。不工作,先生,我已经完成了修改您好,先生,谢谢您的好主意,我以这种方式尝试了它,但文档仍然不工作。getElementById('jsform')。submit(); 您好,先生,谢谢您提出的好主意,我用这种方式尝试了一下,但仍然无法使用document.getElementById('jsform').submit();