我知道在here和here之前已经提出了类似的问题。但是,当我尝试更新div
元素的HTML时,这些不完全类似于我的情况,因为他们正在尝试更改输入框的值。我的问题是我在HTML页面的顶部调用了一个JS函数,该函数用于更新页面上innerHTML
个元素之一的div
。由于某些原因,这是行不通的。根据对this question的回答,我理解这可能是因为我试图在页面完全加载之前访问div。为了解决这个问题,我尝试从主题div onload()
事件中调用该函数。然而,即使这样也拒绝工作。
function wotd() {
$('#wotd').HTML("<strong>test</strong>");
alert($('#wotd').text());
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script>
//wotd();
</script>
<div class="col col-md-4">
<!-- WOTD panel -->
<div class="panel panel-default panel-box card-effect">
<div class="panel-heading panel-title">Word of the Day</div>
<div id="wotd" class="panel-body panel-text" onload="wotd();">
Word of the day not currently available.
</div>
</div>
</div>
&#13;
答案 0 :(得分:5)
innerHTML
是javasript
属性。您应该使用html()
中的jquery
来替换元素的内容。而div
也没有onload
事件。您应该在document ready
或body load
上执行此操作。
function wotd() {
$('#wotd').html("<strong>test</strong>");
alert($('#wotd').text());
}
wotd();
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="col col-md-4">
<div class="panel panel-default panel-box card-effect">
<div class="panel-heading panel-title">Word of the Day</div>
<div id="wotd" class="panel-body panel-text" onload="wotd();">
Word of the day not currently available.
</div>
</div>
</div>
&#13;