使用innerHTML没有任何效果

时间:2016-01-14 02:51:51

标签: javascript jquery html

我正在尝试使用javascript动态更改标题到我的网站,因此标题没有改变。为简单起见,我的HTML看起来像

&ltdiv class="container"&gt
  &lth1 id="name"&gtNic&lt/h1&g
  &ltp id="email"&gt&lt/p&gt
  &lthr&gt
&lt/div&gt

&ltscript src="js/something.js"&gt&lt/script&gt

我的javascript存在于名为something.js的文件中,看起来像

$(document).ready(function() { 
    console.log('I got run');
    $('#name').innerHTML = "YO";
    $('#email').innerHTML = "why hello";
})

出于某种原因,我在控制台中看到了日志,但html从未改变过。为什么标题没有改变?

我确实试过看堆栈溢出问题 Javascript: Does not change the div innerHTML 在这里Setting innerHTML: Why won't it update the DOM?以及其他许多人,但是没有一个能解决我的问题。

2 个答案:

答案 0 :(得分:2)

在jQuery中,您使用.html(" text")而不是.innerHTML

$(document).ready(function() { 
    console.log('I got run');
    $('#name').html("YO");
    $('#email').html("why hello");
})

答案 1 :(得分:1)

Jquery没有innerHTML属性来设置html而不是它有方法。

如果您的内容仅为纯文字

,请使用 .text()

喜欢这个

 $('#name').text("YO");

如果有html内容,请使用 .html()

喜欢这个

 $('#name').html("<p>YO</p>");

DEMO