如何在jquery中获取php数组值

Posted

技术标签:

【中文标题】如何在jquery中获取php数组值【英文标题】:how to get php array value in jquery 【发布时间】:2016-08-20 02:44:12 【问题描述】:

我很困惑如何在 Jquery 中获取 php 生成的 Array() 值。 请帮助一些人。

我的数组结构是:

Var data = Array ( [0] => Array ( [id] => 11 [date] => 2016-04-26 13:37:16 [member_id] => 46 [quantity] => 1 [costper_litre] => 40 [total_amount] => 40 [paid_amount] => 30 [balance_amount] => 10 [entry_date] => 26-04-2016 ) );

我以前是这样在 jquery 中获取价值的:

<script>
    var account_id = data['entry_date'];
    alert(account_id);
</script>

给出未定义的错误。

【问题讨论】:

我不太明白你的真实代码是什么。哪些代码来自 PHP,哪些代码来自 JQuery。 您似乎不确定客户端代码和服务器端代码之间的区别。您发布的代码是伪代码,而不是实际代码。通常,javascript 可以通过 AJAX 或通过服务器在源代码中回显该数据来访问服务器端内容,以便 JavaScript 可以访问它。 公共函数editoutput_entries($mid) $conn = $this->conn; $jsonData = 数组(); $sql = "SELECT * FROM ".CASH_BOOK." where id=$mid"; $result=$conn->查询($sql); $array = $result->fetch_assoc(); $jsonData[] = $数组;返回$json数据; 这是真正的代码,这个数组来自这里 How to pass variables and data from PHP to JavaScript?的可能重复 【参考方案1】:

使用 json_encode:

var data = <?php echo json_encode($php_array); ?>;

【讨论】:

我不想在 php 中 @WebsnapDesigns 这是 javascript 代码......你想将你的 php 变量转换为 javascript,这就是它的作用...... 您需要使用 ajax 发布 jquery 数组并将该数组保存到 php 文件中的 php 变量中。我认为这是唯一的方法。【参考方案2】:

你得到undefined,因为entry_date key不在data数组中,它在data的第零个索引中

因此尝试:

  $account_id = data[0]['entry_date'];
  alert($account_id);`

【讨论】:

也不会说未定义 是数组还是对象? 请写console.log(data);在脚本标签中,并检查您在浏览器控制台中得到的内容 console.log(data) 的结果是什么; ?【参考方案3】:

试试看:-

<?php
 $var = Array ( [0] => Array ( [id] => 11 [date] => 2016-04-26 13:37:16 [member_id] => 46 [quantity] => 1 [costper_litre] => 40 [total_amount] => 40 [paid_amount] => 30 [balance_amount] => 10 [entry_date] => 26-04-2016 );
?>



 <script>
   $( document ).ready(function() 
    Var data = <?php echo $var[]; ?>
     );
    </script>

<script>
    Var data = <?php print_r($var); ?>
 </script>

【讨论】:

不,我只想在 jquery 中显示数组中的值【参考方案4】:

假设您使用的是 ajax,请尝试以下操作;

   public function editoutput_entries($mid) $conn = $this->conn; $jsonData = array(); $sql = "SELECT * FROM ".CASH_BOOK." where id=$mid"; $result=$conn->query($sql); $array = $result->fetch_assoc(); $jsonData['result'] = $array; return json_encode($jsonData);  

在ajax成功函数中:

   success:function(data)
    var account_id = data.result.entry_date;
    alert(account_id);

【讨论】:

你是如何将值从 php 传递给 js 的? 你从 php 到 jquery 不工作.....以及为什么你在这里使用结果 -> var account_id = data.result.entry_date; 我更改了返回数据的函数 这里是结构:["id":"11","date":"2016-04-26 13:37:16","member_id":"46","quantity" :"1","costper_litre":"40","total_amount":"40","paid_amount":"30","balance_amount":"10","entry_date":"26-04-2016"] 【参考方案5】:

您应该阅读 JSON 或只是谷歌“如何将变量从 PHP 传递到 JavaScript”,有很多关于这可以完成的多种方式的信息。 Other *** Question

<script>
    data = JSON.parse(<?PHP echo json_encode($array); ?>);
</script>

<script>
    alert(data); //for testing purposes
    var account_id = data['entry_date'];
    alert(account_id);
</script>

【讨论】:

$array 应该被你保存数组的变量替换。你应该更新你的问题以包含更多信息,你给了我们一个 php 数组的 print_r,我们需要知道您在哪里设置它以及 jquery 代码与 php 代码的比较位置。它可能在 2 个完全不同的文件中!最好只是阅读我发给你的另一个问题。

以上是关于如何在jquery中获取php数组值的主要内容,如果未能解决你的问题,请参考以下文章

如何在jquery中使用php数组

如何在json中编码php数组并解析成jquery

将php数组传递给jquery函数

从对象 php 的 jquery 数组中设置值?

如何在php中获取会话数组值?

PHP怎么随机获取数组里面的值?