Javascript 如何使用jquery使用“数据id”属性更改innerHtml内容?
我有这个html,我想通过下面给出的数据id来更改内容Javascript 如何使用jquery使用“数据id”属性更改innerHtml内容?,javascript,php,jquery,html,Javascript,Php,Jquery,Html,我有这个html,我想通过下面给出的数据id来更改内容 <li data-id="528"> <a title="LOGIN" class="dropdown-toggle" href="#"> <i class="glyphicon glyphicon-user"></i>LOGIN</a> <div style="width: 350px;" data-width="350" data-class=
<li data-id="528">
<a title="LOGIN" class="dropdown-toggle" href="#">
<i class="glyphicon glyphicon-user"></i>LOGIN</a>
<div style="width: 350px;" data-width="350" data-class="menu-login-row">My other content</div>
</li>
如果可以的话,请告诉我
谢谢。是的,这是可能的
像这样
<li data-id="528">
<a title="LOGOUT" href="/logout">
<i class="glyphicon glyphicon-user"></i>LOGOUT</a>
<div style="width: 350px;" data-width="350" data-class="menu-login-row">My other content</div>
</li>
您可以通过属性选择器获取元素,并使用.html修改内容:
var a=$('li[data-id="528"]').find('a');
a.attr('href','/logout');
a.contents().filter(function() {
return this.nodeType == 3
}).each(function(){
this.textContent = this.textContent.replace('LOGIN','LOGOUT');
});
试试看
$(selector).html(whatEverYouWant);
您可以为此只编写一行代码
var htmlData = '<a title="LOGOUT" href="/logout">';
htmlData+= '<i class="glyphicon glyphicon-user"></i>LOGOUT</a>';
htmlData+='<div style="width: 350px;" data-width="350" data-class="menu-login-row">My other content</div>';
jQuery('li[data-id="528"]').html(htmlData);
请更具体地说明你想要完成什么,问题很模糊看看这篇文章:你可以像$li[data id=528]那样得到它。你不能这样做。因为它会删除@debin。请注意,OP的问题是如何更改innerHtml内容,更不用说你在说什么了,你只需要包装你想要的东西。html是一样的。他想改变innerHTML,就像我认为他想知道如何通过数据id改变内容一样,所以我的意思是op可以使用.html来改变他想要的任何东西。但我修改了您提到的答案:他在数据id中的innerHTML中指定了他想要的内容:
var htmlData = '<a title="LOGOUT" href="/logout">';
htmlData+= '<i class="glyphicon glyphicon-user"></i>LOGOUT</a>';
htmlData+='<div style="width: 350px;" data-width="350" data-class="menu-login-row">My other content</div>';
jQuery('li[data-id="528"]').html(htmlData);
$('li[data-id="528"]').find('a').attr("title","LOGOUT").attr("href","/logout").html('<i class="glyphicon glyphicon-user"></i>LOGOUT</a>');