我正在开发一个jQuery .get
,它将向服务器发送一个值,以与数组进行比较,然后将数组编码为json格式作为响应。下面是代码(jQuery和PHP zend)。我不确定我的问题是识别键和值,还是语法。是否可以查看我的php控制器所响应的原始json数据?
$.get(
"/ed/macro",
{value: singleValues},
function(data) {
$.each(data, function(key,value1){
$.each(data.value1[0], function(key,value2){
$('#stage').html("data");;
});
});
},"json");
$select = $this->getDbTable()->select();
$select->from('sub');
$resultSet = $this->getDbTable()->fetchall($select);
$data = array();
foreach ($resultSet as $row) {
$entry = new Application_Model_Subdiscipline();
$entry->setIdSub($row->idsubdiscipline)
->setSub($row->subdiscipline)
->setDescription($row->description);
$data[] = $entry;
}
return $data;
}
public function macAction()
{
$request = $this->getRequest()->getParam('value');
// acti
$sub = new Application_Model_Sub();
$fetch = $sub->fetchAll($request);
$jsonObject = Zend_Json::encode($fetch);
echo $jsonObject;
// action body
}
在PHP中查看对象print_r
,在Javascript中查看对象console.log
。或者,正如Sam所说,在JS调用它之后,在Net中查看发送了什么。
假设你在告诉服务器告诉浏览器这是带有header("Content-type: application/json");
的json后,正在回显一个json字符串,那么你的问题可能在这里
$.each(data, function(key,value1){
$.each(data.value1[0], function(key,value2){
data.value1
不是你要处理的,而是value1
。我假设value1
是一个数组,并且您选择其中的第一个元素value1[0]
,然后进行迭代?
$.each(data, function(key,value1){
$.each(value1[0], function(key,value2){
或者你在追求
$.each(data, function(key,value1){
$.each(value1, function(key,value2){
请回显对象并将其显示给我们。