我的页面中有一些HTML在DIV中。整个页面中有多个实例,其设置文本框(或其他项目)..
我喜欢做一个JQuery搜索,并在DIV(apexir_rollover_content)中替换所有出现的HTML,将项目更改为简单显示..DIV有多个实例..
这是一个html片段..
<div id="apexir_rollover_content" style="height: 210px;">
<a href="javascript:void(false);">
<input type="text" value="" maxlength="2000" size="6" name="f05"></input>
</a>
<a href="javascript:void(false);">
<input type="text" value="23162" maxlength="2000" size="6" name="f05"></input>
</a>
我想更改下面的行,以便它只具有标准文本值..
<input type="text" value="23162" maxlength="2000" size="6" name="f05"></input>
我无法进行全局替换,因为我需要保留其他文本框项目......
如果有人可以提供帮助,我将不胜感激......
THX
答案 0 :(得分:1)
通常你会想要一个类或id来找到正确的元素。由于你没有这个,你可以
1:使用jQuery选择器查找需要替换的输入元素
jQuery("input[type='text']")
2:将一个元素移到
之上.parent()
3:并替换输入字段
.html('<input type="text" value="23162" maxlength="2000" size="6" name="f05"></input>')
我创建了一个带有代码的jsFiddle:http://jsfiddle.net/sdhxybj1/
这是您可以使用的JS jQuery代码:
jQuery("input[type='text']").parent().html('<input type="text" value="23162" maxlength="2000" size="6" name="f05"></input>')
答案 1 :(得分:0)
此外,如果您只打算像以前的解决方案中那样只替换一些输入,则可以过滤jquery语句,如下所示:
$("input[type='text']").filter('[name="f05"]').parent().html('<input type="text" value="23162" maxlength="2000" size="6" name="f05"></input>');
但是如果您打算用内部输入替换每个锚点,那么您可以使用:
$('#apexir_rollover_content a').each(function() {
var innerEle = $(this).children();
$(this).replaceWith(innerEle);
});