【发布时间】:2016-03-05 08:52:37
【问题描述】:
这是我的代码:
$(document).ready(function() {
$( ".iCheck-helper" ).on( "click", function(){
var sel = $('.i-check:checked').map(function(_, el) {
// if($(this).is(":checked")){
return $(el).val();
}
}).get();
// alert(sel);
var nme = $('.i-check:checked').map(function() {
// return $(el).val();
return $(this).attr("name");
}).get();
// alert(nme);
var value = this.value;
// this(attir)
var city_name =<?php echo json_encode($cityname) ?>;
var start =<?php echo json_encode($start)?>;
var end =<?php echo json_encode($end)?>;
var room_count =<?php echo json_encode($room_count)?>;
var member_count =<?php echo json_encode($member_count)?>;
var selt_guest =<?php echo json_encode($selt_guest)?>;
var selt_room =<?php echo json_encode($selt_room)?>;
// alert(city_name);
$.ajax({
// alert();
type: "POST",
url: "hotelresults",
data: {
key : sel,
name:nme,
search_city:city_name,
start:start,
end:end,
selt_guest:selt_guest,
selt_room:selt_room,
room_nf:room_count,
guest_nf:member_count,
},
success: function (data) {
$('.hotel_list').html(data);
}
});
});
});
单击复选框时,此成功函数会调用。这里sel 和name 以数组方式传递给控制器。
如果我的一个复选框未选中,它应该在sel 和name 中传递数组的剩余值。
如果所有复选框都未选中,我的 sel 和 name 值设置为 null。
所以在这里,当我的值变为空或所有复选框都未选中时,我需要在我的Success 中传递另一组data,如下所示。
data: {
search_city:city_name,
start:start,
end:end,
selt_guest:selt_guest,
selt_room:selt_room,
room_nf:room_count,
guest_nf:member_count,
}
在这里,我需要 .map 函数,因为没有该函数,我的值不会传递给控制器。
【问题讨论】:
标签: javascript jquery checkbox