jquery,ajax 如何提交多个checkbox的值?
-----------------------------
funtion submitCheckbox(){
$.ajax( {
type : "GET",
url : "......",
data : ? ? ? ? ?,
success : function(data) {
}
});
}
-------------------------
<input type="checkbox" class="check" id=''check1" value="1"/>
<input type="checkbox" class="check" id=''check2" value="2"/>
<input type="checkbox" class="check" id=''check3" value="3"/>
<input type="checkbox" class="check" id=''check4" value="4"/>
<input type="checkbox" class="check" id=''check5" value="5"/>
<input type="checkbox" class="check" id=''check6" value="6"//>
:
:
------------------------------------
在Action中定义一个List或数组:
List<String> list; 或 String[] arr;
-------------------------------------
怎么写才能将选中的checkbox的值传人Action中并赋给list或arr?
我不想在js里循环拼接参数:=1&=2&=3&=4&=5&=6... 还有没有其他的办法。 展开
<input type="checkbox" name="student" value="1" data-age="18" />
<input type="checkbox" name="student" value="2" data-age="19" />
<input type="checkbox" name="student" value="3" data-age="20" />
var student = $("input[name='student']:checked").serialize();
$.ajax({
url: "your-url",
type: "post",
data: student,
success: function (result) {
//handle
}
});
如果3个都是选中的状态的话,后台接收的数据为1,2,3
扩展资料:
关于jQuery对checkbox的其他操作
1、根据id获取checkbox
$("#cbCheckbox1");
2、获取所有的checkbox
$("input[type='checkbox']");//or
$("input[name='cb']");
3、获取所有选中的checkbox
$("input:checkbox:checked");//or
$("input:[type='checkbox']:checked");//or
$("input[type='checkbox']:checked");//or
$("input:[name='ck']:checked");
4、获取checkbox值
//用.val()即可,比如:
$("#cbCheckbox1").val();
5、获取多个选中的checkbox值
var vals = [];
$('input:checkbox:checked').each(function (index, item) {
vals.push($(this).val());
});
6、判断checkbox是否选中(jquery 1.6以前版本 用 $(this).attr("checked"))
$("#cbCheckbox1").click(function () {
if ($(this).prop("checked")) {
alert("选中");
} else {
alert("没有选中");
}
});
7、设置checkbox为选中状态
$('input:checkbox').attr("checked", 'checked');//or
$('input:checkbox').attr("checked", true);
8、设置checkbox为不选中状态
$('input:checkbox').attr("checked", '');//or
$('input:checkbox').attr("checked", false);
9、设置checkbox为禁用状态(jquery<1.6用attr,jquery>=1.6建议用prop)
$("input[type='checkbox']").attr("disabled", "disabled");//or
$("input[type='checkbox']").attr("disabled", true);//or
$("input[type='checkbox']").prop("disabled", true);//or
$("input[type='checkbox']").prop("disabled", "disabled");
10、设置checkbox为启用状态(jquery<1.6用attr,jquery>=1.6建议用prop)
$("input[type='checkbox']").removeAttr("disabled");//or
$("input[type='checkbox']").attr("disabled", false);//or
$("input[type='checkbox']").prop("disabled", "");//or
$("input[type='checkbox']").prop("disabled", false);
都给他加个name="checks" 在action 中定义个 String[] checks;顺便生成get/set方法 其余的就不用了 他是自动获取你选中的值
我没用form标签 也没用struts标签 也不是submit提交,这样估计不行吧。
1
2
3
4
$(document).ready(function(){
//button(id=Submit) 触发click事件
$("#Submit").click(function(){
var chenked=$("input[type='checkbox']:checked").val([]);//此为重点
for(var i=0;i
<input type="checkbox" name="student" value="2" data-age="19" />
<input type="checkbox" name="student" value="3" data-age="20" />
var student = $("input[name='student']:checked").serialize();
$.ajax({
url: "your-url",
type: "post",
data: student,
success: function (result) {
//handle
}
});
如果3个都是选中的状态的话,后台接收的数据为1,2,3
jq获取多个checkbox的值的方法:
<form name="fm" action="">
<input type="checkbox" name="checkbox" value="1" />1
<input type="checkbox" name="checkbox2" value="2" />2
<input type="checkbox" name="checkbox3" value="3" />3
<input name="checkbox4" type="checkbox" value="4" />4
<input type="button" id="btn" value="提交" />
</from>
<script type="text/javascript">
$(document).ready(function(){
$("#btn").click(function(){
//第一种方案,直接获取数组值
/*var chenked=$("input[type='checkbox']:checked").val([]);//获取提交的表单下input为复选框所有选中的数组值
for(var i=0;i<chenked.length;i++){ //循环值
alert(chenked[i].value);
}*/
//第二种方案,获取复选框对象数组,
var ck = $("input[type='checkbox']:checked") //获取选中的复选框数组
var ckVal = "";
for(var i = 0; i<ck.length; i++){
//alert($(ck[i]).val())//循环得到当前选择的值
ckVal += $(ck[i]).val() + ",";
}
alert(ckVal)
});
});
</script>
效果:
function delitmc(){
//定义一个字符串用来编接checkbox的值,一般来说就是id了
var str="";
//我在页面定义的checkbox都有一个属性class="checki'"
//下面就是获取class='checkit' 的所有值,以逗号进行字符编接
$("[class='checkit'][checked]").each(function(){
str+=$(this).val()+",";
}
)
//这个str就是你编接的checkbox选中的值,如果空则 表示没选
//不空,则表示有多个或则一个咯
if(str==""){
alert("您必须选择一条记录进行删除操作!");
return ;
}else{
$.ajax({
type: "POST",
url: "/cb/cityBaseInfAction!delItSaleField.action?disId="+str,
success: function(json) {
if(json){
alert("删除信息成功!");
}else{
alert("删除信息失败!");
}
query1("","",1);
}
});
}
}