0

我对 javascript json 有疑问。我可以从 ajax 帖子中获取价值。

像这样的脚本。

<script> function makeAjaxCall()
{ 
    $.ajax({ 
        type: "post", 
        data: $('#form1').serialize(), 
        url: "http://localhost/SPKM/new_file.php", 
        cache: false,   
        success: function(json){        
        var obj = jQuery.parseJSON(json); 
        var r = obj['STATUS'];
        alert(r);
    } 
});
} 
</script>

和这样的形式..

<form name="form1" id="form1">
<input type="text" name="value" id="value">
<input type="button" name="Submit" onkeypress="makeAjaxCall()">
</form>

像这样的new_file.php..

<?
$query = "SELECT sum(in)-sum(out) AS total FROM $tableName";
   $result = mysql_query($query);
   while($row = mysql_fetch_array($result))
   { 
   $phpVar = array("STATUS",$row['total']));
   echo json_encode($phpVar);
   }
?>

当我单击按钮时结果未定义.. 感谢您的帮助..

4

3 回答 3

2

你的数组将是结构

[0] => "STATUS"
[1] => somevalue

如您所见,没有索引“STATUS”,因此obj['STATUS']将返回未定义。添加=>您的数组创建或获取 obj 的第一个索引。

于 2013-09-05T07:29:08.817 回答
1

那未定义,因为您的数组不是关联映射。

<?php
$array = array('status' => $row['total']);
?>
于 2013-09-05T07:26:32.037 回答
0

js

$.ajax({ 
    type: "post", 
    data: $('#form1').serialize(), 
    url: "http://localhost/SPKM/new_file.php", 
    cache: false,   
    success: function(json){
        console.log( json.STATUS );
    }
});

php

while($row = mysql_fetch_array($result)) {
    echo json_encode(array(
        "STATUS"=> $row['total']
    ));
}
于 2013-09-05T07:33:26.163 回答