<input type="checkbox" name="cityNos" lay-skin="primary" lay-filter="c_one" title="北京" value="10001">
<input type="checkbox" name="cityNos" lay-skin="primary" lay-filter="c_one" title="南京" value="10002">
<input type="checkbox" name="cityNos" lay-skin="primary" lay-filter="c_one" title="西安" value="10003">
<input type="checkbox" name="cityNos" lay-skin="primary" lay-filter="c_one" title="常州" value="10004">
接上上篇的,随之暴露出一个问题,就是在提交时候
表单直接submi提交还好,到后台Controller时String cityNos还是能够收到10001,10002这样的字符串的
但是在Ajax提交时候 就只能获取到最后一个选项的值的问题 解决办法很简单
在layui的data.field 拿数据的时候 先赋值一下就好了
就是用js用 "," 拼接了一下选中的value值,然后赋值给data
var checkboxValue="";
$("input:checkbox[name='cityNos']:checked").each(function() { // 遍历name=standard的多选框
if(checkboxValue==0){
checkboxValue = $(this).val();
return true;
}
checkboxValue += ',' + $(this).val();
});
data.field.cityNos=checkboxValue;
$.ajax({
type: 'POST',
url: '/url',
data: data.field,
dataType: 'json',
success: function (resp) {
//处理业务
}
});
然后你再提交就是了