如何使用 Javascript/jquery 将字符串中的数组显示为表行

Posted

技术标签:

【中文标题】如何使用 Javascript/jquery 将字符串中的数组显示为表行【英文标题】:How to display array in String as table rows with Javascript/jquery 【发布时间】:2021-02-09 17:57:14 【问题描述】:

在我的脚本中,我通过 ajax 调用从 php 数据库请求中获取了一个字符串。结果字符串如下所示:

array(4) 
  [0]=>
  array(3) 
    ["id"]=>
    string(3) "181"
    ["number"]=>
    string(2) "37"
    ["livingid"]=>
    string(1) "1"
  
  [1]=>
  array(3) 
    ["id"]=>
    string(3) "181"
    ["number"]=>
    string(2) "37"
    ["livingid"]=>
    string(1) "2"
  
  [2]=>
  array(3) 
    ["id"]=>
    string(3) "185"
    ["number"]=>
    string(2) "37"
    ["livingid"]=>
    string(1) "1"
  
  [3]=>
  array(3) 
    ["id"]=>
    string(3) "185"
    ["number"]=>
    string(2) "37"
    ["livingid"]=>
    string(1) "2"
  

我不知道为什么会这样返回。我想在表格中显示结果。为此,我会使用 jquery:

   $("#deActWh").append(result); //#deActWh is the id of table 

但这只有在我在 <tr> <td> 等字符串中有 html 表 syntx 时才有效。我正在寻找一种将这个字符串转换回数组并在每一行中插入 html 语法的好方法。我还需要去掉所有不必要的东西,比如“array(4)...string(3)..etc”。我想使用 split() 方法,但我不知道如何在这里有用地使用此方法。我愿意接受建议或其他方法。

【问题讨论】:

【参考方案1】:

您可以将其作为 json_encoded 字符串返回,而不是将其作为 php 数组返回。

我假设您正在使用 pdo 从 mysql 中获取结果,然后直接将结果返回给 ajax。

$result = whatever your pdo call is.

return json_encode($result);

由于 jquery 是 javascript,它可以很容易地解释 JSON。但是,您仍然需要自己循环并构建表。

【讨论】:

谢谢。这已经有很大帮助了。除了开头的“string(1738)”之外,返回字符串现在是正确的 JSON 格式。你知道这是怎么回事吗?我会用 substring 或 split() 和 pop() 把它剪掉。 它不应该有那个。你能把你的代码贴在这里让我看到吗?如果您有“字符串”,则很可能您正在执行 var_dump 或其他操作。 哦,是的,显然 php 方法使用了 var_dump;然后死去;后声明。我现在尝试使用 return 语句,但是 ajax 调用没有得到任何回报。我是这个项目的新手,不明白一切是如何实现的。不幸的是,我不能问任何人,我也不清楚我还能用什么来从 php 获得可用的回报。 有了返回语句,我只是变成了一个空数组。 它现在正在使用 echo 语句并死掉;后声明。但我很确定这不是一个好的解决方案..【参考方案2】:

这个问题是由于 PHP 脚本引起的

PHP 故意像这样格式化数据。它不是 Javascript 表示法,它对数组有 [],对于数组的第零个元素也没有格式 [0]=>

查看数据库的文档,其中将解释其输出的格式。

【讨论】:

以上是关于如何使用 Javascript/jquery 将字符串中的数组显示为表行的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 jquery/javascript 将文本插入 json [重复]

如何使用 JavaScript/JQuery 创建一个简单的地图 [重复]

如何使用 Javascript/jQuery 确定图像是不是已加载?

如何使用 Javascript/jQuery 确定图像是不是已加载?

如何使用 PHP 或 JavaScript/jQuery 禁用地址栏?

Rails如何检测是不是使用javascript / jQuery插入了部分