我遇到了一个奇怪的问题,我一直在使用jQuery iCheck插件。
出于某种原因,它似乎正在删除我表单上的一些元素。我创建了两个jsfiddles来演示正在发生的事情。
下面是一个没有包含iCheck脚本的表单示例:如您所见,“预订您的培训”按钮显示在表单的底部。
下面是包含iCheck脚本的表单示例:如您所见,“预订您的培训”提交按钮由于某种原因被隐藏。
这就是正在讨论的脚本:
$(document).ready(function(){
$('input').each(function(){
var self = $(this),
label = self.next(),
label_text = label.text();
label.remove();
self.iCheck({
checkboxClass: 'icheckbox_line-green',
radioClass: 'iradio_line-green',
insert: '<div class="icheck_line-icon"></div>' + label_text
});
});
});我唯一的结论是,iCheck脚本/插件正在隐藏表单提交元素,但我无法弄清楚为什么会发生这种情况。
发布于 2013-12-28 23:04:59
该按钮被移除的原因是,当前的选择器为按钮之前的隐藏输入以及单选按钮运行该each。我想您只想为单选按钮执行此操作。label.remove();行在其前面的隐藏输入上运行时移除输入按钮。
$('input').each(function(){为每个输入运行,而不仅仅是单选按钮。如果要将其限制为这些,请将选择器更改为$('input[type="radio"]').each(function(){。
https://stackoverflow.com/questions/20820216
复制相似问题