我有一个从 JSONP 文件收到的 javascript 对象。
该对象包含多个“选项”和“结果”,用于在用户点击时调整页面上的html。
现在,我可以检查 json 文件中是否存在 HTML 字符串(通过 json 引用插入)。我想要做的是获取该字符串,在 json 文件中找到下一个“结果”或“选项”,然后返回该“选项”或“结果”值,以便我可以使用它来更改 html...
我怎么做?我一直在尝试 .indexOf 方法来查找当前索引,但这并不能真正帮助我找到像“选项”这样的特定属性。
这是我用来遍历 JSONP 文件并查找当前字符串是否存在的代码。
$.ajax({
url: "http://www.myurl.com/jsonp.php",
type: "GET",
dataType: "jsonp",
jsonpCallback: "otmjsonp",
async: false,
success: function (JSON) {
$(".result").on("click", function () {
var currentResult = $(this).text(); //.result is the line of HTML the user has clicked
for (var playerSelection in JSON) {
if (JSON.hasOwnProperty(playerSelection)) {
if (JSON[playerSelection] === currentResult) {
alert("this selection exists in the JSON");
}
}
}
})
}
});
这是大型 JSONP 文件的一个非常简单的版本:
otmjsonp({
"situation1" : "Your opponent is trying to tackle you", "playerPrompt1" : "What will you do first?",
"option1" : "avoid him",
"result1" : "he tackles you",
"situation2" : "you were tackled", "playerPrompt2" : "Your opponent begins to slow down",
"option2" : "chase after him",
"result2" : "you caught up",
)}
等等等等
由于我完全陷入困境,即使是模糊的想法/方向也会受到赞赏。