87,910
社区成员
发帖
与我相关
我的任务
分享
var html = "<ul>"
+"<li class='li1'><a href='#'>图片1<img></a></li>"
+"<li class='li2'><a href='#'>图片2<img></a></li>"
+"<li class='li3'><a href='#'>图片3<img></a></li>"
+"<ul>";
var addImg = "<a href='#'>图片1_1<img></a>"; // 要添加的元素
$html = $( html );
var oldLi = $html.children( "[class='li1']").html() ;
var newLi = $html.children( "[class='li1']").append( addImg ).html();
html = html.replace( oldLi,newLi ); // 无法替换
console.log( oldLi ); // <a href="#">图片1<img></a>
console.log( newLi ); // <a href="#">图片1<img></a><a href="#">图片1_1<img></a>
console.log( html ); // 输出结果为源字符串,没有替换
/*
注意不要<img/>,找到该元素的子元素进行替换时浏览器不会识别img的/标签
var html = '<ul>'
+'<li class="li1"><a href="#">图片1<img/></a></li>'
+'<li class="li2"><a href="#">图片2<img/></a></li>'
+'<li class="li3"><a href="#">图片3<img/></a></li>'
+"<ul>";
若这样还是无法正确替换
*/
// 下面可替换
var html = '<ul>'
+'<li class="li1"><a href="#">图片1<img></a></li>'
+'<li class="li2"><a href="#">图片2<img></a></li>'
+'<li class="li3"><a href="#">图片3<img></a></li>'
+"<ul>";
var addImg = '<a href="#">图片1_1<img></a>'; // 要添加的元素
$html = $( html );
var oldLi = $html.children( "[class='li1']").html() ;
var newLi = $html.children( "[class='li1']").append( addImg ).html();
html = html.replace(
oldLi,
newLi //可以替换
// $html.children( "[class='li1']").html(),
// $html.children( "[class='li1']").append( addImg ).html()
);
console.log( oldLi ); // <a href="#">图片1<img></a> 浏览器输出img标签时是不会带/结束
console.log( newLi ); // <a href="#">图片1<img></a><a href="#">图片1_1<img></a>
console.log( html );
var html = '<ul>'
+'<li class="li1"><a href="#">图片1<img></a></li>'
+'<li class="li2"><a href="#">图片2<img></a></li>'
+'<li class="li3"><a href="#">图片3<img></a></li>'
+"<ul>";
var addImg = '<a href="#">图片1_1<img></a>'; // 要添加的元素
$html = $( html );
var oldLi = $html.children( "[class='li1']").html() ;
var newLi = $html.children( "[class='li1']").append( addImg ).html();
html = html.replace(
// oldLi,newLi 可以替换
// 下面无法替换
$html.children( "[class='li1']").html(),
$html.children( "[class='li1']").append( addImg ).html()
); // 无法替换
document.write( html );
console.log( oldLi ); // <a href="#">图片1<img></a>
console.log( newLi ); // <a href="#">图片1<img></a><a href="#">图片1_1<img></a>
console.log( html ); // 输出结果为源字符串,没有替换