关于ajax获取json数据返回到页面中!页面中显示不出来!
type: "POST",
url:"CPSearch.action",
data:paramStr,
dataType: 'json',
success: function (dataRes, textStatus, jqXHR) {
var result = dataRes.ResultInfo;
var debugInfo = dataRes.DebugInfo;
if(result != "error"){
function createShowingTable(dataRes){
var dataArray = $.parseJSON(dataRes.jsonData);
var tableStr = "<table>";
tableStr = tableStr +
"<thead><td>Casno</td><td>ChineseChemicalName</td><td>ChineseSynonyms</td><td>EnglishChemicalName</td><td>EnglishSynonyms</td><td>MolecularFormula</td></thead>";
var len = dataArray.length;
for(var i=0 ;i<len ; i++){
tableStr = tableStr
+ "<tr><td>"+ dataArray[i].Casno +"</td>"+"<td>"+dataArray[i].ChineseChemicalName + "</td>"+"<td>"+dataArray[i].ChineseSynonyms +"</td></tr>"
+ "<tr><td>"+ dataArray[i].EnglishChemicalName +"</td>"+"<td>"+dataArray[i].EnglishSynonyms + "</td>"+"<td>"+dataArray[i].MolecularFormula +"</td></tr>"
;
}
tableStr = tableStr + "</table>";
}
$("#scroll-box").html(tableStr);
}else{
alert("error cause by " + debugInfo);
}
},
error: function (dataRes) {
//alert("error cause by ajax error:" + dataRes.responseText );
}
});
} 展开
先简单的说说你的代码的问题:
不知道你是不是代码没有贴完整,变量paramStr是没有定义的
你的圆括号、花括号的潜逃是不一致的,很显然最后一行应当是以});结尾,与开头({对应,你少圆括号
JavaScript是对换行敏感的,所以只能以;换行结尾,你代码中多次出现
tableStr = tableStr
+ "<tr><td>"+ dataArray[i].Casno +"</td>"+"<td>"+dataArray[i].ChineseChemicalName + "</td>"+"<td>"+dataArray[i].ChineseSynonyms +"</td></tr>"
这样的换行,不知道是不是复制的时候的问题。
5.最大的问题是,你在ajax的success:function(){}中定义了一个嵌套的函数createShowingTable(),但是这个函数从来没有被调用过。
下面给出了一些参考代码,语法上是没有问题的,其他地方没测试。
-------------------------------------------------------------------------------------------------
$.ajax({
type: "POST",
url:"CPSearch.action",
data:paramStr,
dataType: 'json',
success: function (dataRes, textStatus, jqXHR) {
var result = dataRes.ResultInfo;
var debugInfo = dataRes.DebugInfo;
if(result != "error"){
createShowingTable(dataRes);
}else{
alert("error cause by " + debugInfo);
}
},
error: function (dataRes) {
//alert("error cause by ajax error:" + dataRes.responseText );
}
});
function createShowingTable(dataRes){
var dataArray = $.parseJSON(dataRes.jsonData);
var tableStr = "<table>";
tableStr = tableStr + "<thead><td>Casno</td><td>ChineseChemicalName</td><td>ChineseSynonyms</td><td>EnglishChemicalName</td><td>EnglishSynonyms</td><td>MolecularFormula</td></thead>";
var len = dataArray.length;
for(var i=0 ;i<len ; i++){
tableStr = tableStr + "<tr><td>"+ dataArray[i].Casno +"</td>"+"<td>"+dataArray[i].ChineseChemicalName + "</td>"+"<td>"+dataArray[i].ChineseSynonyms +"</td></tr>"+ "<tr><td>"+ dataArray[i].EnglishChemicalName +"</td>"+"<td>"+dataArray[i].EnglishSynonyms + "</td>"+"<td>"+dataArray[i].MolecularFormula +"</td></tr>";
}
tableStr = tableStr + "</table>";
$("#scroll-box").html(tableStr);
}
刚开全部都贴上了,超出了字符限制!所以把很多字段和传的参数给删了!我是刚接触ajax ,有很多不懂,我也插入个alert( )试了;那个函数确实没被调用过!
谢谢!以后有问题还请多多教导!
满意请给分 谢谢