2011-11-10 133 views
-1

能否帮我组建DIV块(HTML)以获得JSON格式的响应。将JSON响应转换为HTML

JSON格式:[{"REL_NAME" : " 999999999","SO" : "","U_ID" : "105"}]

段:

function ServiceSucceeded(result) { 
    $('#accNo12').empty(); 
    if (DataType == "json") { 
    $('#accNo12').append("<div id=\"Search\" class=\"results\">"+ 
    "<span id=\"lb\">Account No:"+result.U_ID+"</span></div>"+ 
    "<label>RelMgr: </label>"+ 
    "<span id=\"RID\">"+result.REL_NAME +"</span><br />"+ 
    "<label>Off ID: </label><span id=\"OffId\">"+ result.SO+"</span><br/>"); 
     } 
    } 

截至目前我得到的输出值不确定。 感激,如果你能帮助

感谢

回答

3
function ServiceSucceeded(result) { 
    $('#accNo12').empty(); 
    if (DataType == "json") { 
    result = result[0]; 
    ... 

基本上,你的结果对象是一个数组里面。或者您可以使用result[0].U_ID代替result.U_ID

+0

result [0] .U_ID不起作用 – pal

+0

它是这样或那样的。控制台中console.log(result)的输出是什么?正如在另一个答案中所说的,如果ajax数据类型不是json(如果未设置,jquery会将其识别为json),则可能需要使用'result = $ .parseJSON(result)'。 – roselan

0

我觉得这里的问题是,你不解析JSON数据 在你的函数的开头添加这,

result = jQuery.parseJSON(result); 
+0

我正在获取JSON数据正确的格式,我检查结果在警报框 – pal

0

基本上你是检查是否有不存在的数据类型。我摆弄着,结果如下:

html: 
<div id='accNo12'>hello</div> 

javascript: 
function ServiceSucceeded(result,DataType) { 
alert(DataType); 
$('#accNo12').empty(); 
if (DataType == "json") { 
    $('#accNo12').append("<div id=\"Search\" class=\"results\">"+ 
     "<span id=\"lb\">Account No:"+result.U_ID+"</span></div>"+ 
     "<label>RelMgr: </label>"+ 
     "<span id=\"RID\">"+result.REL_NAME +"</span><br />"+ 
     "<label>Off ID: </label><span id=\"OffId\">"+ result.SO+"</span><br/>"); 
    } 
} 

$(document).ready(function() { 
    ServiceSucceeded(jQuery.parseJSON('{"REL_NAME" : " 999999999","SO" : "","U_ID" : "105"}'),'json'); 
}); 

result: 
Account No:105 
RelMgr: 999999999 
Off ID: