我有这个HTML
<div id='add_more_edu'>
<div class='one_exp'>
--- many INPUT and SELECT elements with disabled attribute
</div>
</div>
我的页面上有一个Button,点击后会调用一个函数,该函数的代码如下所示。
var edu_contect = $("#add_more_edu").clone().html();
// Line # 2
edu_contect = $(edu_contect).find("input,select").removeAttr('disabled');
$('.edu_history_div').append(edu_contect);
这些字段已成功停用,但我在.edu_history_div
中附加的内容就是这样
<div id='add_more_edu'>
--- many INPUT and SELECT elements with disabled attribute
</div>
<div class='one_exp'>
消失了。
如果我发表评论Line # 2
,则<div class='one_exp'>
不会消失。
解决方案是什么?
或者
此行的任何替代方案
edu_contect = $(edu_contect).find("input,select").removeAttr('disabled');
...
我试过了
$(edu_contect).find("input,select").removeAttr('disabled');
和<div class='one_exp'>
没问题,但Disabled
和input
select
属性
答案 0 :(得分:3)
find()
上的$(edu_contect)
只会返回您输入和选择的匹配元素,这些元素存储在edu_contect
行edu_contect = ...
上。
此外,此处不需要html()
,因为append()
可以对find()
返回的对象执行其他操作,例如.clone()
。
使用以下
var edu_contect = $("#add_more_edu").clone();
edu_contect.find("input,select").removeAttr('disabled')
$('.edu_history_div').append(edu_contect);
<强> Fiddle Demo 强>