使用AJAX我已经检索了Json信息,但是在函数执行过程中,我无法在相关Div中显示文本。
代码一直运行到底部,正如我使用控制台看到的那样,但即使我将占位符文本放入 div“place”中,占位符文本在函数末尾也保持不变。
$.each(data, function(i,item){
if(i===0){
var placeHTML='<h2>'+item.name+'</h2>' +
'<p>where you can get <br>' +
'a pint of <em>'+item.pint+'</em> for only<br>' +
'<span>£'+item.cost+'!</span></p>';
window.localStorage.setItem("placeName", item.name);
window.localStorage.setItem("placeLoc1", item.location);
window.localStorage.setItem("placeLoc2", item.location2);
window.localStorage.setItem("placeEmail", item.email);
window.localStorage.setItem("placeNumber", item.number);
console.log("Data saved");
document.getElementById("place").innerHtml = placeHTML;
console.log("Data placed:");
console.log(placeHTML);
$("#loadText").fadeOut();
$('#place').fadeIn();
return false;
}
});
我也尝试将 document.getElementById("place").innerHTML = foo
替换为 $("#place").val(foo)
但没有成功.
div 的值为 id="place"
和 class="place"
。
最佳答案
document.getElementById("place").innerHtml = placeHTML;
应该是
document.getElementById("place").innerHTML = placeHTML;
使用 jQuery 来实现
$("#place").html(placeHTML)
val
将设置输入字段之类的值,以使用您想要使用 html()
函数的 jQuery 更改内部 HTML
关于javascript - 无法在 AJAX 函数中成功设置 innerHTML 或 $(this).val,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14878989/