【发布时间】:2014-11-17 20:24:36
【问题描述】:
我在 php 中遇到了这个错误:
Invalid argument supplied for foreach()
我想在 jquery 中为输入值创建一个数组
<input type="text" class="passenger">
<input type="text" class="passenger">
<input type="text" class="passenger">
那么js就是:
var passengers = new Array();
$('.passenger').each(function(){
if($(this).val() == " "){
passengers.push(JSON.stringify($(this).val()));
}
});
然后在我将它发布到 php 之后,我想要它,所以我显示所有乘客
目前,这不起作用。为什么不
foreach($passengers as $pass){
$each_passengers = json_decode($pass);
}
【问题讨论】:
-
$passengers不是数组而是字符串。您正在执行.stringify将 json 数据转换为字符串。 -
您可以在数据发送前使用
passengers.push($(this).val());和var data = JSON.stringify(passengers),然后在PHP 中使用$passengers = json_decode($data)。 -
if($(this).val() == " "){只会添加空值