我为我的特殊困境寻找答案,我认为它必须与我自己的误解(我是JS的新手)有关。我知道类似的主题,但没有完全解决我想要确定的内容 - 如果我错过了之前发布的内容,请原谅我。
我已经将我正在尝试做的事情归结为以下JavaScript,它利用jQuery来获取将文件内容读取到变量(我试图避免所有涉及使用XMLHttpRequest()的hullabaloo只是为了读取文件服务器端):
double total = 0;
JArray jsonarray = null;
JObject jsonobject = null;
List<ClientAccount> list = null;
try
{
list = ClientBussinesLayer.getListClientCash(id);
for(ClientAccount item in list)
{
total += item.debtJanuary + item.debtFebruary + item.debtMarch;
}
jsonobject = new JObject();
jsonobject.Add("totalDebt", total);
jsonobject.Add("statusList", "success");
jsonarray = JArray.FromObject(list);
jsonarray.Add(jsonObject);
}catch(Exception ex)
{
error
}
return JsonConvert.SerializeObject(jsonarray);
fnSuccessList: function (data) {
var strHtml = '';
var list = jQuery.parseJSON(data); //also i tried with data.d but dont work
$.each(list, function (index, item) {
strHtml += '<tr>';
strHtml += ' <td>' + item.debtJanuary + '</td>';
strHtml += ' <td>' + item.debtFebruary + '</td>';
strHtml += ' <td>' + item.debtMarch + '</td>';
strHtml += '</tr>'
});
$("#table").append(strHtml);
}
如果最好在纯JS中使用XMLHttpRequest而不是那么好,但我只想知道如何能够在检索函数之外生成值 - 例如,与其他函数一起使用。
关于我缺少的任何想法?
非常感谢任何帮助。
答案 0 :(得分:-1)
答案 1 :(得分:-2)
此代码应该适合您。
var refFile = "./myfile"; // path to my txt file
function readBody(xhr) {
var data;
if (!xhr.responseType || xhr.responseType === "text") {
data = xhr.responseText;
} else if (xhr.responseType === "document") {
data = xhr.responseXML;
} else {
data = xhr.response;
}
return data;
}
var xhr = new XMLHttpRequest();
xhr.onreadystatechange = function() {
if (xhr.readyState == 4) {
console.log(readBody(xhr));
}
}
xhr.open('GET', refFile, true);
xhr.send(null);
&#13;