Javascript 在引导中隐藏按钮

Javascript 在引导中隐藏按钮,javascript,jquery,html,twitter-bootstrap,Javascript,Jquery,Html,Twitter Bootstrap,我试图在引导中隐藏一个或多个单选按钮。看 它的工作原理与预期一样,只是移除任何一个侧按钮都会使新侧按钮的样式不正确(没有圆角)。在本例中,删除“女性”可以正常工作,但删除“男性”或“其他”会导致按钮行的样式不正确 解决这个问题最简单的方法是什么?请注意,在某些情况下,我可能必须取消隐藏按钮,因此仅将其从DOM中删除是不可取的。引导将样式应用于最后一个元素 解决方案I(如果不想删除按钮并将其隐藏): 在css中创建一个类以提供圆角,并将该类添加到prev()元素中。当您show()元素删除这个类时

我试图在引导中隐藏一个或多个单选按钮。看

它的工作原理与预期一样,只是移除任何一个侧按钮都会使新侧按钮的样式不正确(没有圆角)。在本例中,删除“女性”可以正常工作,但删除“男性”或“其他”会导致按钮行的样式不正确


解决这个问题最简单的方法是什么?请注意,在某些情况下,我可能必须取消隐藏按钮,因此仅将其从DOM中删除是不可取的。

引导将样式应用于最后一个元素

解决方案I(如果不想删除按钮并将其隐藏):

在css中创建一个类以提供圆角,并将该类添加到
prev()
元素中。当您
show()
元素删除这个类时

JS:

CSS:

当您
显示时
按钮只需执行以下操作:

$("input[value='other']").parent().prev().removeClass('pseudoLast')
$("input[value='other']").parent().show();
解决方案二

您需要删除该元素

js:

setTimeout(函数(){
$(“输入[value='other'])。父项().remove();//<此处
}, 1000);

稍后您可以附加该元素。

CSS将样式应用于“btn组”中的最后一个元素。hide()方法只是将“display:none”添加到元素中,CSS仍然将其解释为最后一个元素,因为它仍然是DOM的一部分

因此,您需要将其从DOM中完全删除

otherEl = $("input[value='other']").parent();
$("input[value='other']").parent().remove();
以后再这样添加:

$("#gender").append(otherEl);


我看不出非DOM删除方法对上述方法有任何好处,但如果有,请告诉我

您是否会考虑手动添加边界半径?(因为只有3个选项)我以为他提到“从DOM中删除它是不可取的。”@EricT:出于同样的原因,还有解决方案II.)@EricT:我已经改变了顺序,我认为解决方案一是用户正在寻找的ryt?是的,我想可能是这样。等待线程启动者回来验证。我以为他提到“从DOM中删除它是不可取的。”从DOM中删除它的任何替代方案都将涉及CSS添加和更多JS
$("input[value='other']").parent().prev().removeClass('pseudoLast')
$("input[value='other']").parent().show();
setTimeout(function () {
    $("input[value='other']").parent().remove(); // < here
}, 1000);
otherEl = $("input[value='other']").parent();
$("input[value='other']").parent().remove();
$("#gender").append(otherEl);