6

在我的 JS 文件中,我试图将内容设置为弹出对话框。在萤火虫中,我看到对话框打开,即使在我将其内容设置为$(dialog).InnerHtml. 但这在我刷新页面时有效。

这种行为有什么特别的原因吗?

4

2 回答 2

14

您不能.innerHTML直接设置 jQuery 对象。您需要设置$.html()

// jQuery doesn't have an innerHTML property, so this is wrong
$("#dialog").innerHTML = "This is the wrong way";

// jQuery has an html() method that sets the html within your dialog
$("#dialog").html( "And this is the correct way" );

请记住,当您处理 jQuery 时,您处理的是一个对象,而不是一个元素。类似的属性.innerHTML存在于 DOM 中的元素上,但不存在于 jQuery 对象中。jQuery 提供了这样的方法,$.html()这样您就不必触摸.innerHTML.

于 2012-05-18T06:40:16.817 回答
1

这是这样做的方法:

在 JavaScript 中:

document.getElementById('dialog').innerHTML = 'something';

在 jQuery 中:

$("#dialog").html('something');
于 2012-05-18T06:44:05.253 回答