用ajax获取后台数据,返回json数据,怎么在前台使用呢?
后台
if (dataType == "SearchCustomer") { int ID; if (Int32.TryParse(CustomerID, out ID)) { string s = GridComputer.GridCustomer.getCustomer(1, 1, ID); if (s == null) { context.Response.ContentType = "text/plain"; context.Response.Write("[{\"name\":无用户,\"id\":\"0\",\"company\":\"无用户\"}]"); } else { context.Response.Write(s); } } }
前台
$(document).ready(function () { $("#Button3").click( function (SucCallback) { $.ajax( { type: "get", url: 'GridDatas.ashx', //后台处理程序 dataType: 'json', //接受数据格式 data: 'DataType=SearchCustomer&CustomerID=' + document.getElementById("Text3").value, //要传递的数据 success:SucCallback, error: function () { alert("error"); } }); }) })
参考代码
grid.getCustomer(1,2,function (data) { var list = '<p>' + tree_GridInfo._name + '的用户有</p><br>'; list += '<table><tr><th>姓名</th><th>电话</th></tr> '; $.each(data, function (i, n) { list += '<tr><td>'; list += n.name + '</td>' + '<td>' + n.company; list += '</td></tr>'; }); $("#SearchResult").html(list)
看你的json数据是列表还是单个了,就一条就无需中括号了
context.Response.Write("{\"name\":无用户,\"id\":\"0\",\"company\":\"无用户\"}"); $(document).ready(function () { $("#Button3").click( function (SucCallback) { $.ajax( { type: "get", url: 'GridDatas.ashx', //后台处理程序 dataType: 'json', //接受数据格式 data: 'DataType=SearchCustomer&CustomerID=' + document.getElementById("Text3").value, //要传递的数据 function (dataJson) { alert(dataJson.Name); alert(dataJson.Id); }, error: function () { alert("error"); } }); }) })