我现在已经解决了这个问题一段时间了,我似乎无法弄明白。我有一个复选框,选中后,删除包含文本框的div。取消选中该复选框后,上述文本框应返回到该页面。删除工作,但附加没有。
这就是我目前正在使用代码方式:
$('#ResultsNoData1').click(function () {
var parent = document.getElementById('Results1').parentNode;
var child = document.getElementById('Results1');
if (this.checked) {
parent.removeChild(child);
}
else {
parent.appendChild(child);
}
});
我的原创设计通过以下方式起作用:
$('#ResultsNoData1').click(function () {
(this.checked) ? $('.results1').hide() : $('.results1').show();
});
但是,我需要重新创建的功能实际上是从网站上访问此文本框中删除数据,同时隐藏文本框本身。这不提供该功能。
答案 0 :(得分:2)
在这里:http://jsfiddle.net/cx96g/5/
您的问题是您尝试在点击中设置父级,但一旦删除子级,它就会失败。
var parent = document.getElementById('Results1').parentNode;
var child = document.getElementById('Results1');
$('#ResultsNoData1').click(function () {
if (this.checked) {
node = parent.removeChild(child);
}
else {
parent.appendChild(child);
}
});
答案 1 :(得分:2)
您需要显示并隐藏TextBox不会删除。
$('#ResultsNoData1').click(function () {
if (this.checked) {
$("#Results1").hide();
}
else {
$("#Results1").show();
}
});
答案 2 :(得分:0)
$('#ResultsNoData1').click(function () {
(this.checked) ? $('#Results1').val('').parent().hide() : $('#Results1').parent().show();
(this.checked) ? $('.results1casual').hide() : $('.results1casual').show();
});
答案 3 :(得分:0)
你正在以正确的方式行事但缺少一件小事需要从文本框中删除值。
$('#ResultsNoData1').click(function () {
(this.checked) ? $('.results1').hide() : $('.results1').show().val("");
});
或
$('#ResultsNoData1').click(function () {
(this.checked) ? $('.results1').hide().val("") : $('.results1').show();
});
这是正确的方式(显示/隐藏)textarea。