我想在窗体中创建2个按钮以在Windows和Mac系统之间进行选择。我想要的是在提交表单时我应该能够拥有一个名称字段name =“ system”,该名称字段具有用户选择的2个不同的值。当然我可以使用复选框或选择带有选项的标签来做到这一点,但是对于设计,我在质疑自己是否可以这样做?预先感谢
<legend>With what system the data need to be compatible?</legend>
<button type="button" class="system btn" name="systeme" value="windows">Windows</button>
<button type="button" class="system btn" name="systeme" value="mac">Mac</button>
答案 0 :(得分:0)
通过添加类标记所选按钮,并在提交表单时在表单中添加隐藏字段。
$(".system").on("click",function(){
//if the clicked button is not already selected
if( !$(this).hasClass("selected_system") ){
//remove the "select" from other selected button
$(".selected_system").removeClass("selected_system");
//mark the current button as selected
$("this").addClass("selected_system");
}
});
现在提交表单时,将隐藏的输入字段附加到具有选定按钮值的表单上
$("form").submit(function(){
var sel_button_val = $(".selected_system").val();
$(this).append('<input type="hidden" name="system" value="'+sel_button_val+'"/>')
$(this).submit();
});
答案 1 :(得分:0)
可以添加两个具有相同名称属性值的按钮,但是它不能在后端正常工作。当您使用name atrribute读取后端的表单字段时,如果您有多个按钮则返回值数组表单中具有相同的名称值。
您可以通过在提交表单之前根据所选按钮更新value属性来实现此目的。
希望,这将解决您的问题。