这个加上一些css给出了这个结果:
我使用此代码只允许一个活动:
$(".btn-group > .btn").click(function(){
$(this).siblings().removeClass("active");
$(this).addClass("active");
});
但它只是视觉效果,当我尝试输入víaphpPOST(在表单中)时,我什么都没得到。
如果我改为type = radio,PHP工作正常,但它更加丑陋。
¿任何神奇的想法让它保持幻想吗?
用于测试的php代码是:
<html>
<body>
MegaUltraTest <?php echo ($_POST["meat"]); ?>
</body>
</html>
谢谢。
答案 0 :(得分:1)
除了在屏幕上显示一些按钮之外,'btn-group'div中的这些按钮没有做任何有用的事情。他们不知道任何“选定”属性(为了提交所选值)。
按钮并不意味着像单选按钮,复选框等一样。它们的目的是在单击时执行操作。
所以我建议忘记按钮组,只需添加复选框。如果您担心样式,只需添加这个非常有用的库(http://icheck.fronteed.com/)。我认为线条皮肤对你来说很棒。
如果你真的想要这些按钮,你应该编写一些js代码(最好是jquery),然后在click事件中,将选定的值存储在一个将被提交的隐藏输入中。请参阅此处:使用jquery / javascript更改隐藏输入的值
来源:Send Bootstrap Button-Group value in a form with Get or Post 由nkwinder
答案 1 :(得分:0)
您可以检查$_POST['meat']
是否存在,并检查该值是否等于:
像这样实现它:
<div class="btn-group">
<input type="button" name="meat" class="btn btn-default <?= isset($_POST['meat']) && $_POST['meat'] === 'Both' ? 'active' : ''; ?>" value="Both">
<input type="button" name="meat" class="btn btn-default" value="Red">
<input type="button" name="meat" class="btn btn-default" value="White">
<input type="button" name="meat" class="btn btn-default" value="None">
</div>