读书人

$.getJSON(url, function(data) 获取

发布时间: 2013-08-16 14:29:57 作者: rapoo

$.getJSON(url, function(data) 获取不到值
获取到值转换成JSON
private static string GetCityList() //返回值是一个json格式的字符串
{

DataTable dt = new DataTable();
GXSW.GXSWBusiness g = new GXSW.GXSWBusiness();
g.ExcuteSqlText = "select * from 系统分类 where 大类='试题类别'";
g.ExcuteSQL();
dt = g.GetDataTable();

StringBuilder jsonBuilder = new StringBuilder();
jsonBuilder.Append("{\"");
jsonBuilder.Append("shitileibie");
jsonBuilder.Append("\":[");
for (int i = 0; i < dt.Rows.Count; i++)
{
jsonBuilder.Append("{");
for (int j = 0; j < dt.Columns.Count; j++)
{
jsonBuilder.Append("\"");
jsonBuilder.Append(dt.Columns[j].ColumnName);
jsonBuilder.Append("\":\"");
jsonBuilder.Append(dt.Rows[i][j].ToString());
jsonBuilder.Append("\",");
}
jsonBuilder.Remove(jsonBuilder.Length - 1, 1);
jsonBuilder.Append("},");
}
jsonBuilder.Remove(jsonBuilder.Length - 1, 1);
jsonBuilder.Append("]");
jsonBuilder.Append("}");
return jsonBuilder.ToString();


}





在页面上调取JSON 绑定select
var url = "dropcity.ashx";
$.getJSON(url, function(data) {
for (var i = 0; i < data.length; i++) {
$("C_"+cIndex+"#试题类型").append($("<option></option>").val(data[i].value).html(data[i].text));
}
});
JSON
[解决办法]
ajax的调试根据的步骤来进行调试:

1.工具:chrome 或者 firefox(加上firebug插件)

2.vs方法下打断点

方法:
1.在后台方法打断点,调试后看ajax是否进入了后台
如果没有进入,用chrome查看ajax请求因为什么没有执行

2.若进入断点查看返回的数据格式,若没有效果,那就是ajax成功执行,但返回的数据后进行操作的js方法有失误,那就需要继续查看js哪里出错了


[解决办法]
data取不到?
[解决办法]

引用:
调试以后 for循环根本就没进入

这样子试试
var url = "dropcity.ashx";
$.getJSON(url, { dat: Math.random() }, function (data) {
for (var i = 0; i < data.length; i++) {
$("C_" + cIndex + "#试题类型").append($("<option></option>").val(data[i].value).html(data[i].text));
}
});

读书人网 >asp.net

热点推荐