【发布时间】:2017-12-05 13:08:55
【问题描述】:
首先,要知道我是个新手。除了“if-else”部分的“if”部分之外,下面的代码都有效。被提醒的“searchTerm”是用户在具有多个值的输入字段中输入的最后一个值。因此,如果用户输入“a, b, c, d”,并且“a”(或任何其他值)满足 ===0 标准,则“d”将被警告。
我在 stackoverflow 和谷歌搜索了其他领域并学习了回调和承诺,以及 .getJSON 是异步的,并且在 JSON 之外可见,但我不得不承认我显然没有得到它,我确定我我错过了一些简单的东西。任何见解/帮助将不胜感激。
for (var l = 0; l < searchTermArray.length; l++) {
searchTerm = searchTermArray[l];
searchURL = buildURL(searchTerm);
getResults(searchURL, searchTerm);
function getResults() {
$.getJSON(searchURL, function (responses) {
presentResults(responses, searchTerm);
});
}
function presentResults(responses, searchTerm) {
response = responses.search;
if (responses.search.return.count === 0) {
alert(searchTerm + " Not Found");
} else {
alert("Results found");
****Do other stuff with the results****
}
}
}
【问题讨论】:
-
您遇到了什么问题?我不明白你的问题?如果可以,但如果不可以???
-
@Volem ,问题是当我在 if 语句中提醒“searchTerm”时提醒的值不是满足 ===0 条件的值。相反,警报值是输入值中的最后一个值。因此,如果输入了 4 个值并且第二个值 ===0,无论如何,最后一个值是被警告的值。所以它在 if 中正确进入,但 searchTerm 的值不正确。
-
知道了,抱歉打扰您重新解释
标签: javascript callback getjson