首页 > 解决方案 > 使用ajax将值从一个php页面传递到另一个

问题描述

我正在尝试使用 AJAX 将一些值从一个 php 页面传递到另一个页面,但我无法正确传递它。目标也是在将值传递给下一页后加载下一页。但我无法做到这一点,并且该值没有传递到下一个 php 页面。我得到错误

注意:未定义索引:var1

这是我第一页的java代码

function next(){
    $.ajax({
         url: "next.php",
        data: { var1 : 123 },
        success: function( data ) {
            console.log( data );
        }
    }).done(function(data) { 
        $("#content").load("next.php");
    });
}

这是第一页的html代码

<button onclick="next()">Click me</button>
<div id="content">

现在在我的第二页中,我正在使用它来获取变量

<?php echo $_GET['var1'];?>

我已经尝试过互联网上其他帖子的解决方案,但到目前为止还没有找到任何解决方案。希望有人给出答案。非常感谢

标签: phpjqueryajaxparameter-passing

解决方案


通过运行$('#content').load("next.php"),您实际上是在没有查询参数的情况下再次加载页面。您已经在成功函数中获得了对 next.php 的请求响应 - 它存储在变量中data。所以你可以$('#content').html(data);在你的成功函数中做。

function next(){
    $.ajax({
        url: "next.php",
        data: {var1 : 123},
        success: function( data ) {
            $('#content').html(data);
        }
    });
}

请注意,success 函数仅在 HTTP 200 上执行,因此如果您想要真正花哨,可以这样做:

function next(){
    $.ajax({
        url: "next.php",
        data: {var1 : 123},
        success: function( data ) {
            $('#content').html(data);
        },
        error: function() {
            console.log("an error occurred");
        }
    });
}

推荐阅读