此代码使用的是Javascript AJAX。如何将其转换为jQuery AJAX?
var mine = new XMLHttpRequest();
mine.onreadystatechange = function() {
if (mine.readyState == 4 && mine.status == 200) {
var abc = mine.responseText;
var jsonResponse = JSON.parse(abc);
document.getElementById("que").innerHTML = jsonResponse["que"];
document.getElementById("op1").innerHTML = jsonResponse["op1"];
document.getElementById("op2").innerHTML = jsonResponse["op2"];
document.getElementById("op3").innerHTML = jsonResponse["op3"];
document.getElementById("op4").innerHTML = jsonResponse["op4"];
var cor = jsonResponse["cor"];
}
};
mine.open("POST","index.php",true);
mine.send();
响应:
{
"que": "How much was the `Jade Hair Pin` worth in the episode `The Blind Banker`?",
"op1": "9 Trillion",
"op2": "9 Million",
"op3":"9 Billion",
"op4": "9 Zillion",
"cor": "2"
}
答案 0 :(得分:0)
这完全转换为jQuery,甚至是selectors,setter,......
$.ajax({
url: "index.php",
type: "POST",
// this line could be removed, because jQuery can make a auto-select too
dataType: "json",
success: function(response) {
// use jQuery to select elements and set html content
$("#que").html(response.que).data("cor", response.cor);
$("#op1").html(response.op1);
$("#op2").html(response.op2);
$("#op3").html(response.op3);
$("#op4").html(response.op4);
}
});
function check(value) {
if( value == $("#que").data("cor") ) {
// correct
}
else {
// incorrect
}
}
答案 1 :(得分:-1)
试试这个(仅转换为AJAX调用):
$.ajax({
url: "index.php",
type: "post",
dataType: "json",
success: function(jsonResponse) {
/* Should not be necessary */
// jsonResponse = JSON.parse(jsonResponse);
document.getElementById("que").innerHTML = jsonResponse["que"];
document.getElementById("op1").innerHTML = jsonResponse["op1"];
document.getElementById("op2").innerHTML = jsonResponse["op2"];
document.getElementById("op3").innerHTML = jsonResponse["op3"];
document.getElementById("op4").innerHTML = jsonResponse["op4"];
var cor = jsonResponse["cor"];
dosomestuff(cor); // give "cor" to another function
}
});
如果它不起作用,请在jsonResponse
上执行相同的解析。