我正在开发一个包含搜索功能的项目,目前搜索工作正常,因为我正在使用下拉列表并选择值。 这是我使用下拉列表的代码
<div class="form-group form-group-lg form-group-icon-left search"><i class="fa fa-plane input-icon"></i>
<label>Select an option</label>
<select class="typeahead form-control" name="search">
<?php foreach($search_des as $sd) { ?>
<option value="<?php echo $sd->des_category_id;?>">
<?php echo $sd->des_category_name;?></option>
<?php } ?>
</select>
<br>
</div>
现在根据我们的客户要求,他们需要使用单选按钮显示所有项目,并且他们还想通过单击收音机来提交页面 。我试图使用单选按钮它无法正常工作。 这是我用单选按钮的代码。
<div class="form-group">
<label>Select an option</label>
<?php foreach($search_des as $sd) { ?>
<label>
<input class="form-control" value="<?php echo $sd->des_category_id;?>" type="radio">
<?php echo $sd->des_category_name;?></label>
<?php } ?>
<br>
</div>
使用此项时所有项目都列出正确但所有单选按钮都已选中,我也不知道如何使用单选按钮自动提交表单。
答案 0 :(得分:2)
您需要使用Javascript触发点击提交表单。
将事件侦听器添加到单击的单选按钮,然后触发表单以在事件发生时提交。
这样的事情应该有效,只需相应地更改ID。
var form = document.getElementById("form-id");
document.getElementById("radio-id").addEventListener("click", function () {
form.submit();
});
答案 1 :(得分:0)
你没有给出
name
属性 输入
<div class="form-group">
<label>Select an option</label>
<?php foreach($search_des as $sd) { ?>
<label>
<input name="search" class="form-control" value="<?php echo $sd->des_category_id;?>" type="radio"><?php echo $sd->des_category_name;?></label>
<?php } ?>
<br>
答案 2 :(得分:0)
好的,所以在这个问题上有很多事情需要解决。
首先,如上所述,您需要将名称标签添加到单选按钮。
其次,您需要使用JavaScript在单选按钮的单击事件上提交表单。要设置点击事件,请在单选按钮上添加课程。
在此处发布答案,并附上我的Codepen链接。
<强>代码强>
<form name="theForm">
<div class="form-group">
<label>Select an option</label>
<?php foreach($search_des as $sd) { ?>
<label>
<input class="form-control radioClass" value="<?php echo $sd->des_category_id;?>" type="radio" name="category">
<?php echo $sd->des_category_name;?></label>
<?php } ?>
<br>
</div>
</form>
<强> JS 强> var classname = document.getElementsByClassName(&#34; radioClass&#34;); //我们添加的单选按钮类
var myFunction = function() {
document.theForm.submit(); //theForm is the name of the form.
};
for (var i = 0; i < classname.length; i++) {
classname[i].addEventListener('click', myFunction, false); //Adding listener to the click event.
}
您可以在此链接中使用代码(当然PHP脚本已被虚拟数据替换):https://codepen.io/akshit_ij/pen/KydVXz
如果有帮助,请告诉我。