使用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"
。
答案 0 :(得分:4)
document.getElementById("place").innerHtml = placeHTML;
应该是
document.getElementById("place").innerHTML = placeHTML;
用jQuery做
$("#place").html(placeHTML)
val
将设置输入字段之类的值,用jQuery改变内部HTML,你想使用html()
函数
答案 1 :(得分:3)
试试这个:
$("#place").html(foo)
或者
$("#place").text(foo)
此外,它不是innerHtml
,它应该是innerHTML
:
将其更改为:
document.getElementById("place").innerHTML = placeHTML;
答案 2 :(得分:1)
这一行错了,
document.getElementById("place").innerHtml = placeHTML;
将innerHtml
更改为innerHTML
(HTML应为大写字母),
document.getElementById("place").innerHTML = placeHTML;
答案 3 :(得分:0)
可以尝试使用
$("#place").html(placeHTML);