Jquery抓取数据问题
jquery fatching data issue
伙计们,我在jquery从ajax抓取数据面临一些问题。PHP文件响应正确,并发送json格式的数据在jquery文件警报框也确认我数据正确从PHP文件,但当我必须显示数据在HTML文件,他们没有显示。朋友们告诉我,我在脚本中犯了什么错误…
html:<tr>
<td colspan="6">
<table border="1" width="100%" align="center" class="info">
</table>
</td>
</tr>
jquery: $.ajax({
type: "POST",
url: "billingprocess.php",
data: dataString,
success: function (msg) {
alert(msg);
for (var x = 0; x < msg.length; x++) {
var div = $("<tr>").appendTo(".info");
$("<td>").addClass("cols").text(msg[x].B_account).appendTo(div);
$("<td>").addClass("cols").text(msg[x].B_consumer).appendTo(div);
$("<td>").addClass("cols").text(msg[x].month).appendTo(div);
$("<td>").addClass("cols").text(msg[x].net_amount).appendTo(div);
$("<td>").addClass("cols").text(msg[x].due_date).appendTo(div);
$("<td>").addClass("cols").text(msg[x].gross_amount).appendTo(div);
}
}
});
php代码:if ($rc > 0) {
$i = 0;
while ($i < $rc) {
$r = mysql_fetch_assoc($squery);
$temp[$i] = array("B_account" = > $r['B_account'],
"B_consumer" = > $r['B_consumer'],
"month" = > $r['month']."-".$r['year'],
"net_amount" = > $r['net_amount'],
"due_date" = > $r['due_date']."-".$r['month']."-".$r['year'],
"gross_amount" = > $r['gross_amount']);
$i++;
}
echo json_encode($temp);
}
JSON格式返回数据:
[
{
"B_account": "1014052480080",
"B_consumer": "LA712722",
"month": "Nov-11",
"net_amount": "2107",
"due_date": "30-Nov-11",
"gross_amount": "2282"
},
{
"B_account": "1014052480080",
"B_consumer": "LA712722",
"month": "Dec-11",
"net_amount": "1217",
"due_date": "30-Dec-11",
"gross_amount": "1316"
},
{
"B_account": "1014052480080",
"B_consumer": "LA712722",
"month": "Jan-12",
"net_amount": "737",
"due_date": "31-Jan-12",
"gross_amount": "795"
}
]
这是我的整个代码,我认为脚本中的错误,但有人解决了这个问题吗?
在您的success
回调中,您有
success: function(msg) { // msg is json string here
for (var x = 0; x < msg.length; x++) {...}
}
但是在迭代之前,您应该将返回的数据转换为object
,因为您只有json
字符串,并且没有定义dataType
,因此可以使用$.parseJSON
var obj = $.parseJSON(msg);
则替换后面的
for (var x = 0; x < msg.length; x++) {...}
$.each(obj, function(k, v){
// here k is key and v is the value, for example try following
console.log(obj[k]);
console.log(k);
console.log(v);
});
相关文章:
- ng绑定和ng href问题.ng href未从控制器加载数据
- FancyTree JS+Backbone.JS-将数据加载到FancyTree时出现问题
- 使用createContainer将Meteor数据获取到React Native中时出现问题
- 将数据加载到使用JSON返回的表单字段时出现问题
- 加载泰坦尼克号可视化数据时出现问题
- 通过jQueryAjax一起发布Array和Form数据时出现问题
- 在firebase(web)上存储数据时出现问题
- 在javascript中使用json数据导致问题
- 访问angularjs中的数据时出现问题
- 使用 ng 模型获取数据时遇到问题
- 使用Breeze脱机数据时出现未定义的问题不是函数
- jQuery-数据提取问题(html遍历)
- 从 tinymce 文本区域检索数据时出现问题
- 将 Ajax 数据分配给全局变量时出现问题
- 数据互绑定问题:转换器只运行一次,无法绑定元素的 ID
- 嵌套异步函数未及时返回数据的问题
- 挖空和显示模块模式的数据绑定问题
- 使用大括号的 Internet Explorer 上的 AngularJS 数据绑定问题
- 使用knockout js在页面上显示数据时出现问题-数据不显示
- Html5拖拽&丢弃问题(数据集)