您遇到的问题是未提交按钮值。
以下将为提交表单时选择的按钮创建隐藏的输入元素。
<form action="/test.html" id="the-form" method="get">
<p><b>Question?</b></p>
<p><input type="radio" name="answer" value="a">C<Br>
<input type="radio" name="answer" value="b">B<Br>
<input type="radio" name="answer" value="c">C</p>
<div class="btn-group" data-toggle="buttons-checkbox">
<button type="button" name="bb1" value="b1" class="btn btn-primary">Left</button>
<button type="button" name="bb2" value="b2" class="btn btn-primary">Middle</button>
<button type="button" name="bb3" value="b3" class="btn btn-primary">Right</button>
</div>
<p><input type="submit"></p>
</form>
<script>
$('#the-form').on('submit', function() {
$('.btn.active', '#the-form').each(function() {
var input = document.createElement("input");
input.setAttribute("type", "hidden");
input.setAttribute("name", this.name);
input.setAttribute("value", this.value);
document.getElementById("the-form").appendChild(input);
});
});
</script>
注意为了使它工作,我必须给表单一个 id,并给按钮提供唯一的名称(因为它们是buttons-checkbox
而不是buttons-radio
,请参阅docs)。
如果你想要buttons-group
行为使用:
<div class="btn-group" data-toggle="buttons-radio">
<button type="button" name="bb" value="b1" class="btn btn-primary">Left</button>
<button type="button" name="bb" value="b2" class="btn btn-primary">Middle</button>
<button type="button" name="bb" value="b3" class="btn btn-primary">Right</button>
</div>