2016-05-14 39 views
0

我无法从复选框使用Ajax获取多个值。我可以得到一个复选框的值,但多个值不起作用。 这里是我的HTML代码使用Ajax获取多个复选框值

<input name="p_flatform" class="p_flatform" type="checkbox" value="1">Iphone 
<input name="p_flatform" class="p_flatform" type="checkbox" value="2">Ipad 
<input name="p_flatform" class="p_flatform" type="checkbox" value="3">Android 

,这是我的Ajax

$.ajax({ 
     url: 'quotation_validation', 
     type: 'post', 
     data: { p_flatform:$('input[name="p_flatform"]:checked').val()}, 

它没有工作。请帮忙。

+0

你想要什么?一组选中的值? – cuniculus

回答

0

var arr = []; 
 
$.each($('input[name="p_flatform"]:checked'), function() { 
 
    var value = $(this).val() 
 

 
    arr.push(value) 
 

 
}) 
 
console.log(arr)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<input name="p_flatform" class="p_flatform" type="checkbox" value="1" checked>Iphone 
 
<input name="p_flatform" class="p_flatform" type="checkbox" value="2">Ipad 
 
<input name="p_flatform" class="p_flatform" type="checkbox" value="3" checked>Android

迭代每个复选框以获取所有值。 推送阵列上的每个值。

0

你应该能够使用.map(),像这样:

$('input[name="p_flatform"]:checked').map(function() { return $(this).val(); }).get(); 

给你:

data: { p_flatform:$('input[name="p_flatform"]:checked').map(function() { return $(this).val(); }).get()},