-1

我正在尝试将 php 附加到 div 使用

<script>
var values = {var1: 2, var2:"Hello"};
    $('#id').append($.get("phpfile.php", values));
</script>

但是它似乎没有在 php 文件中附加基本回声

<?php
$var1 = $_GET['var1'];
$var2 = $_GET['var2'];
echo "var1= " . $var1 . " " . "var2= " . $var2; 
?>

任何帮助,将不胜感激。

4

2 回答 2

4

Ajax 调用是异步的。这意味着$.get()函数的返回值不会是请求的结果,因为请求尚未执行。您需要使用$.get()调用的成功处理程序,该处理程序将在请求成功返回时调用,或者使用$.get函数返回的 jQuery 延迟对象(A 承诺)。

正确的语法 #1:

<script>
    var values = {var1: 2, var2:"Hello"};
    $.get("phpfile.php", values, function(data) {
        $('#id').append(data);
    });
</script>

这是使用promises的另一种语法:

<script>
    var values = {var1: 2, var2:"Hello"};
    $.get("phpfile.php", values).done(function(data) {
        $('#id').append(data);
    });
</script>
于 2013-03-14T00:08:44.703 回答
0

使用这个,jQuery

<script>
    $.get("phpfile.php", { 'var1': 1, 'var2' : 2},
        function(data){ $('#id').append(data); }, "json");
    });
</script>

php

<?php    
    $var1 = $_GET['var1'];
    $var2 = $_GET['var2'];
    $data = "var1= " . $var1 . " " . "var2= " . $var2;

    echo json_encode($data);
    exit;
?>
于 2013-03-14T00:12:38.883 回答