这是我的控制器的一部分,我需要将变量$coinPacks中的数据传递到我的视图页
else {
$coinPacks=$packs->getPacks();
// print_r($coinPacks);
echo $this->_helper->json(array('error'=>array('error_code'=>300,'error_message'=>'No enough coins to do correction.','pack'=>$coinPacks)));
}
这里是视图页部分
alert(JSON.stringify(response.error));
// foreach($pack as $newpacks)
// {
answerContent = answerContent + '<p class="buy-coins" value="1" coins="100">200 $1</p><p>';
answerContent = answerContent + '<p class="buy-coins" value="3" coins="500">500 $3</p><p>';
answerContent = answerContent + '<p class="buy-coins" value="5" coins="1000">1000 $5</p><p>';
answerContent = answerContent + '<p class="buy-coins" value="15" coins="5000">5000 $15</p><p>';
// }
我需要得到从视图传递的值,并使用该值来进行循环,并从数据库显示相应的值。我对json真的不太了解。请给我一些建议。
我收到这样的警告
{"error":{"error_code":300,"error_message":"No enough coins to do correction.","pack":{}}}
尝试先用$coinPacks->toArray()
转换成数组
$coinPacks=$packs->getPacks();
$coinpacks = array();
foreach($coinPacks as $coin){
$coinpacks['id'] = $coin->id;
$coinpacks['number_of_coins'] = $coin->number_of_coins;
$coinpacks['price'] = $coin->price;
$coins[] = $coinpacks;
}
并在视图页
中调用它 var coin = response.pack;
for(var i=0;i<coin.length;i++)
{
answerContent = answerContent + '<p class="buy-coins" value="'+coin[i].price+'" coins='+coin[i].number_of_coins+'>'+coin[i].number_of_coins+' $'+coin[i].price+'</p><p>';
}
现在运行良好