gpt4 book ai didi

javascript - 从 PHP 返回多个值到 JS 函数 (AJAX/SQL)

转载 作者:行者123 更新时间:2023-11-30 14:18:31 27 4
gpt4 key购买 nike

我想为我网站上的常见问题解答部分提供类似小型搜索引擎的东西。它所做的只是在按下按钮时在 SLQ_DB 中搜索术语。

我想在两个单独的 div 中输出问题和答案。因此我有属于 div 的 $data 和 $data1。

$('input#name-submit').on('click',function()
{
var name = $('input#name').val();
//alert(name);
if($.trim(name) != "")
{
$.post('ajax/name.php',{name:name},function(data, data1)
{
$('div#name-data').html(data);
alert(answer);
$('div#name-data1').html(data1);

});
}
});

但是当我按下回车键时,第二个 div 显示“成功”。但是第一个里面有data和data1。当我在js文件中写function(data1, data)时,data1有所有的信息,而data只是“成功”。

这里发生了什么?

最佳答案

PHP 中的echo 函数将变量的内容输出到响应主体。此正文是您的 Web 应用程序收到的“字符串”。

假设您有这样的代码:

<?php
$var1 = "hello";
$var2 = "world";
echo $var1;
echo $var2;
?>

生成的响应主体将如下所示:helloworld

现在假设这是您的 JS 代码:

$.post('ajax/name.php',{name:name},function(data) {
console.log(data); // "helloworld"
});

jQuery 会将响应主体传递给数据变量,该变量现在包含 heloworld

您需要以某种方式将响应主体内的各个变量分开,例如使用 JSON。

第一步是在服务器上对数据进行编码,就这么简单:

<?php
echo json_encode(["var1"=>$var1, "var2"=>$var2]);
?>

这将创建一个如下所示的响应主体:{"var1":"hello","var2":"world"}

下一个合乎逻辑的步骤是使用 JavaScript 解码此 JSON:

$.post('ajax/name.php',{name:name},function(data) {
var res = JSON.parse(data);
console.log(res.var1); // "hello"
console.log(res.var2); // "world"
});

关于javascript - 从 PHP 返回多个值到 JS 函数 (AJAX/SQL),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53146057/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com