我正在尝试处理使用多选插件http://davidstutz.github.io/bootstrap-multiselect/#faq
的表单在变量中存储多个选择下拉值,但我无法弄清楚如何将其与表单数据的其余部分一起发送到php。
以下是表格:
<div class="form-group ">
<label class="sr-only" for="">Zip Code</label>
<input type="text" class="form-control" placeholder="Zip Code" name="zip" id="zip">
</div>
<div class="form-group">
<label class="col-lg-3 sr-only control-label">Products</label>
<select class="form-control" name="product" multiple>
<!-- <option value="selected">Select Products</option> -->
<option value="Auto">Auto</option>
<option value="Motorcycle/ATV">Motorcycle/ATV</option>
<option value="Boat/PWC">Boat/PWC</option>
<option value="Motor Home">Motor Home</option>
<option value="Travel Trailer">Travel Trailer</option>
<option value="Snowmobile">Snowmobile</option>
<option value="Commercial Auto">Commercial Auto</option>
<option value="Homeowners">Homeowners</option>
<option value="Condo">Condo</option>
<option value="Renters">Renters</option>
<option value="Mobile Home">Mobile Home</option>
</select>
</div>
<button id="next1" class="btn btn-orange" type="submit" >Get Quote</button>
</form>
插件的工作方式是它将选择下拉列表中的多个项目保存为数组,并可以使用
进行访问 var products = validator.getFieldElements('product').val();
我知道它正确存储了所有值,因为如果我将上面的products变量置于警告声明中,我可以看到值。
这是ajax请求以及我需要添加到ajax数据参数的变量
var products = validator.getFieldElements('product').val();
alert(products);
$.ajax({
type: "POST",
url: "process-step1.php",
data: $('.home1').serialize(),
success: function(msg){
// alert("made it to success block!");
alert(msg);
document.location.href = 'form.php';
},
error: function(){
alert("error");
}
});//close ajax
有人可以告诉我如何用表格的其余部分打包并使用ajax发送到php吗?
在php方面,我使用以下内容来获取post变量,但是因为我只获得了存储在products变量中的最后一个值
if(isset($_POST['zip']) && isset($_POST['product'])){
$zip = $_POST['zip'];
$product = $_POST['product'];
…
答案 0 :(得分:0)
您可以添加其他数据以及序列化..
数据:($('。home1')。serialize(),products:products),
我相信这也会支持数组。