我有以下表单输入元素,每个元素都具有相同的“rating”名称,如下所示。
<input type="checkbox" checked="checked" value="5" id="rating5_2053" name="rating">
<input type="checkbox" checked="checked" value="4" id="rating4_2053" name="rating">
<input type="checkbox" checked="checked" value="3" id="rating3_2053" name="rating">
<input type="checkbox" checked="checked" value="2" id="rating2_2053" name="rating">
<input type="checkbox" checked="checked" value="1" id="rating1_2053" name="rating">
<input type="checkbox" checked="checked" value="0" id="rating0_2053" name="rating">
使用时
$form.serialize();
并提交表格,
编辑:使用JQuery Serialize()结果并操纵GET请求的查询字符串,它最终如下所示:
&rating=5&rating=4&rating=3&rating=2&rating=1&rating=0
有充分的理由这样做,但就我而言,我不需要这样做。
我想知道是否有一种方法可以将其配置为执行以下操作?
&rating=5,4,3,2,1,0
由于
答案 0 :(得分:4)
你去吧
var ratingData = [],
data = $('form').find('input:not([name="rating"])').serialize();
$('form').find('input[name="rating"]').each(function(){
ratingData.push(this.value);
});
data += '&rating='+ratingData.join(',');
console.log(data);
答案 1 :(得分:2)
你可以尝试这样的事情:)
var ratings="rating=";
$('input[name="rating"]:checked').each(function(){
var temp = $(this).val();
ratings = ratings+ temp +",";
});
alert(ratings);