问题描述
解决方案
1.修改checkbox的id设定
<input type="checkbox" name="xuanzhong" id="xuanzhong_${ex.expertId}" value="${ex.expertId}" />
2.增加jQuery处理,当然需要倒入jQuery库
<script>
//初期Event处理追加
$(function(
//为每个checkbox加上点击event处理
$("[name='xuanzhong']").each(function(
var $currentId = $(this).attr("id");
$(this).click(function(){
handleXuanzhongClickEvent($currentId);
});
));
));
function handleXuanzhongClickEvent($currentId) {
$("[name='xuanzhong']").each(function(
if ($(this).is("#"+$currentId)) {
//发生Event的checkbox处理
//自己写
} else {
//发生Event以外的checkbox处理
if ($(this).is(":checked")) {
//选中的checkbox处理
//自己写
} else {
//未选中的checkbox处理
//自己写
}
}
));
}
</script>
解决方案二:
首先你不能用id,因为你有多个值。
其次,你点击抽取的时候,判断哪个checkbox是选中的,就不设置值就可以了,其它没有被选中的就可以更改值了
$("[name='xuanzhong']").each(function() {
if ($(this).attr("checked")) {
//已经选中
} else {
//还没有选中的.在下面写你的代码
}
})
方法就是上面那样,你试试
解决方案三:
ajax传递值就好了,简单起见直接导入jquery了
<script src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.4.1.min.js"></script>
<script>
function checkChecked() {
var v = $('#tableid input:checked').map(function () { return this.value }).get().join();
if (v == '') {
alert('没有选择任何记录!'); return false;
}
$.ajax({
url: 'xxxxxx.jsp', data: { v: v }, type: 'POST', complete: function (xhr) {
var r = xhr.responseText;
alert('服务器返回内容:'+r)
}
});
}
</script>
<input type="button" onclick="checkChecked()" id="save" value="保存" />
xxxxxx.jsp
String v=request.getParameter("v");
解决方案四:
没试过可能,跑不动。大概的想法是这样的。希望能作为参考
1.修改checkbox的id设定
2.增加jQuery处理,当然需要倒入jQuery库
//初期Event处理追加
$(function(
//为每个checkbox加上点击event处理
$("[name='xuanzhong']").each(function(
var $currentId = $(this).attr("id");
$(this).click(function(){
handleXuanzhongClickEvent($currentId);
});
));
));
function handleXuanzhongClickEvent($currentId) {
$("[name='xuanzhong']").each(function(
if ($(this).is("#"+$currentId)) {
//发生Event的checkbox处理
//自己写
} else {
//发生Event以外的checkbox处理
if ($(this).is(":checked")) {
//选中的checkbox处理
//自己写
} else {
//未选中的checkbox处理
//自己写
}
}
));
}