**错误:**“未捕获的类型错误:无法读取未定义的属性‘replace’”?
2018-03-20
580
错误: “未捕获的类型错误:无法读取未定义的属性‘replace’”?
jQuery(document).ready(function(){
var rep = jQuery(".abc")
.clone()
.wrap("<div></div>")
.parent().html()
.replace(/select/g,"ul")
.replace(/option/g,"li");
jQuery(".abc").replaceWith(rep);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
1个回答
我认为这可以按预期工作:
jQuery(document).ready(function(){
var rep = jQuery(".abc")
.clone()
.wrap("<div></div>")
.parent().html()
.replace(/select/g,"ul")
.replace(/option/g,"li");
jQuery(".abc").replaceWith(rep);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="abc">
<select>
<option>1</option>
<option>2</option>
</select>
</div>
也许您的页面上缺少
.abc
元素。在这种情况下,
.html()
将返回
undefined
。
Raphael Schweikert
2018-03-20