我在这个问题上坐了很长时间,找不到解决方案:
通过使用php文件(以下脚本)中的函数json_ encode,我通过使用$.parseJSON函数(以下脚本)在主文件中以数组(例如["9,8","15,14","18,17","29,40,10,9"] )的形式从mysql接收数据。
以["9,8","15,14","18,17","29,40,10,9"....]而不是[9,8,15,14,18,17,29,40,10,9],的形式接收具有索引对象的数组
如何将所有这些对象合并在一起?
我尝试使用$.merge函数,但不起作用。帮助??;-)
/////receive.php file//////
$ask = mysql_query("SELECT numbers FROM bying");
if(!ask)
{
die('incorrect ask'.mysql_error());
}
else{
$tab = array();
while ($row = mysql_fetch_assoc($ask))
{
$data=$row['numbers'];
array_push($tab,$data);
}
echo json_encode($tab);
mysql_free_result($ask);
}具有$.parseJSON函数的html文件
$.post('receive.php', function(data)
{
var table1=[];
table1 = $.parseJSON(data);
var numbers=$.merge([],table1);)
for(var i=0;i<numbers.length;i++)
{
alert(numbers[i]);
}
} 发布于 2012-09-13 03:19:58
它看起来像$data是一个逗号分隔的数字字符串,如果是这样,你可以用逗号分割它,然后合并两个数组:
$ask = mysql_query("SELECT numbers FROM bying");
if(!ask)
{
die('incorrect ask'.mysql_error());
}
else {
$tab = array();
while ($row = mysql_fetch_assoc($ask)) {
$data = explode( ',', $row['numbers'] );
$tab = array_merge( $tab, $data );
}
echo json_encode($tab);
mysql_free_result($ask);
}发布于 2012-09-13 03:23:28
为什么不以“显而易见”的方式遍历数组,将每个字符串拆分成“,”,并将每个解析后的数字附加到您构建的数组中呢?
例如:
var newNums = [];
for (var i=0; i<table1.length; i++) {
newNums = newNums.concat(table1[i].split(','));
}https://stackoverflow.com/questions/12394746
复制相似问题