我的联系表格上有这个HTML:
<div class="form-group">
<label class="col-md-2 control-label" for="type">Type of website?</label>
<div class="col-md-10 inputGroupContainer">
<div class="input-group">
<span class="input-group-addon"><i class="fa fa-file-code-o"></i></span>
<select class="form-control" id="type">
<option>Business</option>
<option>Company</option>
<option>Personal</option>
<option>Online Shopping</option>
<option>Other</option>
</select>
</div>
</div>
</div>
如何在电子邮件中验证并传递此字段的数据?
目前我有这个:
<!-- Text input-->
<div class="form-group">
<label class="col-md-2 control-label">Type</label>
<div class="col-md-10 inputGroupContainer">
<div class="input-group">
<span class="input-group-addon"><i class="fa fa-file-code-o"></i></span>
<input name="type" placeholder="eg. Business, Company, Personal, Online Shopping, etc." class="form-control" type="text">
</div>
</div>
</div>
我验证并传递它:
$data = array(
'type' => $request->type,
);
但我想要的输入字段是我的第一个样本(选择框),所以我不知道该怎么做!
感谢。
答案 0 :(得分:6)
你可以这样做:
<div class="form-group">
<label class="col-md-2 control-label" for="type">Type of website?</label>
<div class="col-md-10 inputGroupContainer">
<div class="input-group">
<span class="input-group-addon"><i class="fa fa-file-code-o"></i></span>
<select class="form-control" id="type" name="typeSelection">
<option>--Select type--</option>
<option>Business</option>
<option>Company</option>
<option>Personal</option>
<option>Online Shopping</option>
<option>Other</option>
</select>
</div>
</div>
</div>
遵守规则:
$rules = [
'typeSelection' => 'required|not_in:0'
];
not_in:0
以避免提交第一个选择女巫--Select type--
:)
要将信息传递给验证,只需使用$request->all()
,因为在这种情况下它将使用字段name
typeSelection
无需创建新数组!
答案 1 :(得分:6)
首先将名称提供给
Select
下拉字段,然后在“最简单方法”中使用名称为select
输入字段的验证规则。您提供required
<select class="form-control" id="type" name="Business_Type">
<option value="">Select Type</option>
<option value="Business">Business</option>
<option value="Company">Company</option>
<option value="Personal">Personal</option>
<option value="Online Shopping">Online Shopping</option>
<option value="Other">Other</option>
</select>
// Validation rules somewhere...
$rules = [
...
'Business_Type' => 'required',
...
];
答案 2 :(得分:2)
您需要使用required
验证您的选择,为此您需要设置选择:
选择加入广告素材:
<select class="form-control" id="type" name="selType">
<option value="">Select Type</option>
<option value="Business">Business</option>
<option value="Company">Company</option>
<option value="Personal">Personal</option>
<option value="Online Shopping">Online Shopping</option>
<option value="Other">Other</option>
</select>
某处的验证规则:
$rules = [
'selType' => 'required'
];
答案 3 :(得分:1)
在 Laravel 8 中,我使用了这个,我发现如果您通过检查元素将值更改为其他值 '是的,我知道这听起来很时髦' 仍然可以插入验证器并通过。这是解决方案
选择:
<select class="form-control" id="type" name="Business_Type">
<option value="">Select Type</option>
<option value="Business">Business</option>
<option value="Company">Company</option>
<option value="Personal">Personal</option>
<option value="Online Shopping">Online Shopping</option>
<option value="Other">Other</option></select>
验证器:
$this->validate($request, [
'selType' => 'required|in:Business,Company,Personal,Online Shopping,Others'
]);
只输入验证器必须通过的值,其他所有值都不会通过
答案 4 :(得分:0)
$rules = [
'selType' => 'required|in:Business,Company,Personal,Online Shopping,Others'
];
答案 5 :(得分:0)
如果要检查表的列中是否存在所选值,可以像下面的示例一样进行检查
<select class="form-control" id="type" name="Business_Type">
<option value="">Select Type</option>
<option value="Business">Business</option>
<option value="Company">Company</option>
<option value="Personal">Personal</option>
<option value="Online Shopping">Online Shopping</option>
<option value="Other">Other</option>
</select>
以上选择
'Business_Type' => 'required|my_business ,type'
这将确保选定的值存在,例如在type列的my_business表中。 如果选择第一个选项,它将返回错误
The selected type is invalid.
答案 6 :(得分:0)
您应该在每个选项中输入 Value 第一个应该是
<块引用>value=""
其余的把它们的值放成这样
<option value="">Select Type</option>
<option value="Business">Business</option>
<option value="Company">Company</option>
<option value="Personal">Personal</option>
<option value="Online Shopping">Online Shopping</option>
<option value="Other">Other</option>