div#choices
如果按钮元素内部有多个 div 并且每次div#choices
显示(默认情况下隐藏),我如何显示/隐藏(切换)按钮元素?这是我切换的代码div#choices
:
$('#choices').on("change", ":checkbox", function(e) {
var theName = $(this).attr('name');
var theID = $(this).attr('value');
var input = "";
input = '<span>' + capitalize(theName) + '<input name="input_' + theName + '[]" data-id="' + theName + '_' + theID + '" value="" placeholder="' + capitalize(theName) + '" /><br/></span>';
if ($(this).is(":checked")) {
$("#" + theName + '_choice_' + theID).find(':button').before(input);
$("#" + theName + '_choice_' + theID).show();
} else {
$("#" + theName + '_choice_' + theID).find(':not(button)').remove();
$("#" + theName + '_choice_' + theID).hide();
}
});
更新:添加了 jsFiddle 并根据建议处理一些代码
这是我正在处理的代码示例:jsFiddle
这也是我制作的代码,但没有成功,因为即使隐藏了子 div,按钮仍然存在:
function toggleCreateVariationButton() {
var toggleThis = $("#choices").children('div').length > 1 && $('#choices').children('div').css('display') != "none" ? true : false;
$("button#create-variation").toggle(toggleThis);
}
我每次克隆输入时都会调用该函数,有什么问题?