jquery中replaceWith方法的使用疑惑
下面一段代码:==========================varstr="<div><ahref='#'>hello</a></div>";alert(str);...
下面一段代码:
==========================
var str = "<div><a href='#'>hello</a></div>";
alert(str);
alert($(str).find("a").size());
$(str).find("a").replaceWith("<span>hi</span>");
alert(str);
===========================
执行后没有将str中的a标签替换为相应的结果。不知道为什么? 展开
==========================
var str = "<div><a href='#'>hello</a></div>";
alert(str);
alert($(str).find("a").size());
$(str).find("a").replaceWith("<span>hi</span>");
alert(str);
===========================
执行后没有将str中的a标签替换为相应的结果。不知道为什么? 展开
1个回答
展开全部
在这里,str是一个字符串。
虽然使用了$(str),但是只是相对生成了一个jQuery对象而已(str被当作参数传了进去),
所以这个时候,$(str).find("a").size()和$(str).find("a").replaceWith("<span>hi</span>");都是正常执行了。
但是想得到你要的效果的话,应该这样使用:
var $str = $(str);
$str.find("a").replaceWith("<span>hi</span>");
alert($str.get(0).outerHTML);
虽然使用了$(str),但是只是相对生成了一个jQuery对象而已(str被当作参数传了进去),
所以这个时候,$(str).find("a").size()和$(str).find("a").replaceWith("<span>hi</span>");都是正常执行了。
但是想得到你要的效果的话,应该这样使用:
var $str = $(str);
$str.find("a").replaceWith("<span>hi</span>");
alert($str.get(0).outerHTML);
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询