我不能使用基本的 $('#div').html("value"); 像我习惯的那样更改 div 的文本。相反,我正在尝试使用 div.setAttribute(...)。有没有办法使用它来设置“html”?
抱歉这个菜鸟问题,我还没有学会以这种方式操作我的 div。
我不能使用基本的 $('#div').html("value"); 像我习惯的那样更改 div 的文本。相反,我正在尝试使用 div.setAttribute(...)。有没有办法使用它来设置“html”?
抱歉这个菜鸟问题,我还没有学会以这种方式操作我的 div。
如果你有一个 DOM 元素而不是一个 jQuery 对象,你会使用.innerHTML
.
div.innerHTML = 'new value';
如果您需要附加内容,您可以在技术上使用:
div.innerHTML += 'new value';
但要非常小心,因为它会破坏现有的嵌套内容并重新创建它。
最好是创建一个元素,将您的内容附加到 using .innerHTML
,然后附加新元素的子元素。
var temp_div = document.createElement('div');
temp_div.innerHTML = 'some new content';
while( temp_div.firstChild ) {
div.appendChild( temp_div.firstChild );
}
不,您不能使用 setAttribute 设置 DIV 的 html 内容,因为 DIV 元素上没有 html 属性。为什么不能使用 .html()?
您也可以考虑以下作为替代方案:
你可以用老式的方式来做,使用innerHTML:
document.getElementById('mydiv').innerHTML = 'mytext';
如果你想复制html()
jQuery,你可以使用div.innerHTML