jquery easyui中DataGrid中如何设置checkbox为不可用状态 1.遍历行,将某几行的checkbox的disabled设为true;2.同上,将checkbox去掉3.或者列表中加上checkbox:false 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 顶楼上,我先试试,列表中加上checkbox:false不可能,因为有的需要显示勾取状态但是需要不可用我下试试你第一个方案,但是我之前试的的disabled设为true不行呢 disabled设为true不行,就设为disabled 设置disabled也不行,求代码吧,因为我之前一直没用过easyui,不太会写 原生的js,改成你用的jquery的datagrid估计需要改造下<html><head> <meta http-equiv="Content-Type" content="text/html; charset=GBK"></head><body><table > <thead> <th></th> <th>测试内容</th> </thead> <tbody id ="testtbody"> <tr> <td><input type='checkbox' /></td> <td>test1</td> </tr> <tr> <td><input type='checkbox' /></td> <td>test2</td> </tr> <tr> <td><input type='checkbox' /></td> <td>test3</td> </tr> <tr> <td><input type='checkbox' /></td> <td>test4</td> </tr> </tbody></table></body><script type="text/javascript"> function disableTr() { var table = document.getElementById("testtbody"); var rows = table.rows; var tr = rows[2]; var checkboxTd = tr.cells[0]; var checkbox = checkboxTd.childNodes[0]; debugger; checkbox.disabled = true; //这里禁用第三行的checkbox } disableTr();</script> </html> onLoadSuccess:function(){//加载完毕后获取所有的checkbox遍历 $('#test input:checkbox').each(function(index,el){ if(/*.条件.*/)el.disabled=true; });} 直接去掉checkbox:false或checkbox:true即可! onLoadSuccess只表示已成功加载数据,但是datagrid还未初始化,这样是更改不了 $(document).ready(function(){ var sbstr=""; var cystr = ""; var dg=$('#dg').datagrid({ url: '${ctx }/admgr/messmgr/article_listPage.do?infotype=1', width: 'auto', height: '360', loadMsg:'正在加载数据...', pagination:true, pageNumber:1,//第几页 pageSize: 10,//每页显示的记录条数,默认为10 pageList: [10,20,30],//可以设置每页记录条数的列表 striped:true,//True 就把行条纹化。(即奇偶行使用不同背景色) checkOnSelect:false, columns:[[ {field:'ck',title:'选择',checkbox:true}, {field:'id',title:'ID',width:50}, {field:'title',title:'信息标题',width:250}, {field:'author',title:'作者',width:150,formatter:function(value,rows,index){ var author1= rows.author; var sendDepart1 = rows.sendDepart; var author2= rows.author2; var sendDepart2 = rows.sendDepart2; var author3= rows.author3; var sendDepart3 = rows.sendDepart3; var authors=""; if(sendDepart1 && author1){ authors += author1+"("+sendDepart1.name+")"; } if(sendDepart2 && author2){ authors += ";"+author2+"("+sendDepart2.name+")"; } if(sendDepart3 && author3){ authors += ";"+author3+"("+sendDepart3.name+")"; } return authors; }}, {field:'tjr',title:'报送人',width:80}, {field:'sendTime',title:'报送时间',width:80,formatter:function(value){ return value; }}, {field:'ysb',title:'已上报',width:50,formatter:function(value,rows,index){ if(value==2){ sbstr += (index+1)+","; //alert(sbstr); return "<font style='color:red'>已上报</font>"; }else{ return "未上报"; } }}, {field:'adlist',title:'已采用',width:50,formatter:function(value,rows,index){ var size = value.length; if(size>=1){ cystr += (index+1)+","; return "<font style='color:red'>已采用</font>"; }else{ return "未采用"; } }}, {field:'cz',title:'操作',width:100,formatter:function(value,rows,index){ var id= rows.id; var infotype = rows.infotype; var href = "<a href='javascript:void(0);' class='alink' onclick='sbxx(\""+id+"\",\""+infotype+"\");'>上报</a> <a href='javascript:void(0);' class='alink' onclick='adopt_list("+id+","+infotype+")'>采用维护</a>"; return href; }} ]], onLoadSuccess:function(){ //alert(sbstr); //var chks=$('#table1 input:checkbox').attr("disabled",'disabled'); //alert(chks.length); var strs = sbstr.split(","); //alert(strs.length); for(var i=0;i<strs.length;i++){ //alert(strs); $('#table1 input:checkbox').eq(strs[i]).attr("disabled",'disabled'); } var strs2 = cystr.split(","); for(var i=0;i<strs2.length;i++){ //alert(strs); $('#table1 input:checkbox').eq(strs2[i]).attr("disabled",'disabled'); } }, onLoadError:function(){ //alert('error'); }, onBeforeLoad:function(){ sbstr = ""; cystr = ""; }, toolbar: [{ text: '新增', iconCls: 'icon-add', handler: function(){ //var checkedRows=$('#dg').datagrid('getChecked'); //alert(checkedRows.length) window.location.href='${ctx}/admgr/messmgr/article_add.jsp'; } },'-', { text: '删除', iconCls: 'icon-cut', handler: function () { var checkedRows=$('#dg').datagrid('getChecked'); //alert(checkedRows.length) if(checkedRows.length==0){ $.messager.show('提示', '请选择需要处理的数据',1500); return; }else{ var ids=[]; var infotypes = [] for(var i=0;i<checkedRows.length;i++){ if(checkedRows[i].ysb==2 || checkedRows[i].adlist.length>0){ alert("不能删除已上报或已采用的信息!请重新选择!"); return; } ids.push(checkedRows[i].id); infotypes.push(checkedRows[i].infotype); } $.ajax({ type: "POST", url: "${ctx }/admgr/messmgr/article_delete.do", data: {ids:ids.join(","),infotypes:infotypes.join(";")}, success: function(msg){ $('#dg').datagrid('reload'); $.messager.show('提示', '删除成功',1500); } }); } } }, '-', { text: '修改', iconCls: 'icon-save', handler: function () { var checkedRows=$('#dg').datagrid('getChecked'); //alert(checkedRows.length) if(checkedRows.length==0){ $.messager.show('提示', '请选择需要处理的数据',1500); return; }else{ var id=checkedRows[0].id; var infotype=checkedRows[0].infotype; window.location.href="${ctx}/admgr/messmgr/article_edit.do?id="+id+"&infotype="+infotype+"&level=2"; } } },'-', { text: '返回', iconCls: 'icon-undo', handler: function () { window.location.href="${ctx }/admgr/messmgr/article_list.jsp"; } }] }); var p = $('#dg').datagrid('getPager'); $(p).pagination({ pageSize: 10,//每页显示的记录条数,默认为10 pageList: [10,20,30],//可以设置每页记录条数的列表 beforePageText: '第',//页数文本框前显示的汉字 afterPageText: '页 共 {pages} 页', displayMsg: '当前显示 {from} - {to} 条记录 共 {total} 条记录 ' }); query=function(){ var endTime=""; if($('#filter_LED_endTime').val()){ endTime = $('#filter_LED_endTime').val()+" 23:59:59" } $('#dg').datagrid('load',{ filter_LIKES_title: $('#filter_LIKES_title').val(), filter_LIKES_author_OR_author2_OR_author3: $('#filter_LIKES_author').val(), filter_LIKES_tjr: $('#filter_LIKES_tjr').val(), filter_GED_sendTime:$('#filter_GED_beginTime').val(), filter_LED_sendTime:endTime }); } });<div id="table1"> <table id="dg" > </table></div>看看onLoadSuccess方法, 贴一个解决方案,顺便混个分http://www.oschina.net/code/snippet_942043_17664 chenjiade,不知道你发现了没有使用你说的解决方案当点击这一行的时候灰化的checkbos依然被选中了。或者点击标题处的全选框,灰化的checkbox依然被选中。楼主是想在灰化的时候即使被点击或全选灰化的checkbox是不被选中的。 aiaiok,你说的对,楼主应该就是这个意思,我也想做成这样,不知道有没有什么好的办法 初学者 求javascript教程 检测客户端是否安装某个软件 [急]跪求一简单问题,谢谢各位大侠了 html无法加载js文件,以前可以不知道为啥不行了,急!!!!!!!!!! 在服务器端怎样取得? 新手 倒计时 创建xml,提示无权,是哪里要改呢?而且我已给目录加了everyone的所有权限 啊信,100分,帮忙?有关请求一个页面然后放在某个target里,出现怪象 一个事件驱动的问题!特急,谢谢大家! 请各位大虾帮忙,帮我看看这段代码有什么问题,顺便修改一下,谢谢!改好立即给分 独立的页面语言设置方法 我这段脚本为什么IE可以但是火狐不可以啊
<head>
<meta http-equiv="Content-Type" content="text/html; charset=GBK">
</head>
<body>
<table >
<thead>
<th></th>
<th>测试内容</th>
</thead>
<tbody id ="testtbody">
<tr>
<td><input type='checkbox' /></td>
<td>test1</td>
</tr>
<tr>
<td><input type='checkbox' /></td>
<td>test2</td>
</tr>
<tr>
<td><input type='checkbox' /></td>
<td>test3</td>
</tr>
<tr>
<td><input type='checkbox' /></td>
<td>test4</td>
</tr>
</tbody>
</table>
</body>
<script type="text/javascript">
function disableTr()
{
var table = document.getElementById("testtbody");
var rows = table.rows;
var tr = rows[2];
var checkboxTd = tr.cells[0];
var checkbox = checkboxTd.childNodes[0];
debugger;
checkbox.disabled = true;
//这里禁用第三行的checkbox
}
disableTr();
</script> </html>
$('#test input:checkbox').each(function(index,el){
if(/*.条件.*/)el.disabled=true;
});
}
$(document).ready(function(){
var sbstr="";
var cystr = "";
var dg=$('#dg').datagrid({
url: '${ctx }/admgr/messmgr/article_listPage.do?infotype=1',
width: 'auto',
height: '360',
loadMsg:'正在加载数据...',
pagination:true,
pageNumber:1,//第几页
pageSize: 10,//每页显示的记录条数,默认为10
pageList: [10,20,30],//可以设置每页记录条数的列表
striped:true,//True 就把行条纹化。(即奇偶行使用不同背景色)
checkOnSelect:false,
columns:[[
{field:'ck',title:'选择',checkbox:true},
{field:'id',title:'ID',width:50},
{field:'title',title:'信息标题',width:250},
{field:'author',title:'作者',width:150,formatter:function(value,rows,index){
var author1= rows.author;
var sendDepart1 = rows.sendDepart;
var author2= rows.author2;
var sendDepart2 = rows.sendDepart2;
var author3= rows.author3;
var sendDepart3 = rows.sendDepart3;
var authors="";
if(sendDepart1 && author1){
authors += author1+"("+sendDepart1.name+")";
}
if(sendDepart2 && author2){
authors += ";"+author2+"("+sendDepart2.name+")";
}
if(sendDepart3 && author3){
authors += ";"+author3+"("+sendDepart3.name+")";
}
return authors;
}},
{field:'tjr',title:'报送人',width:80},
{field:'sendTime',title:'报送时间',width:80,formatter:function(value){
return value;
}},
{field:'ysb',title:'已上报',width:50,formatter:function(value,rows,index){
if(value==2){
sbstr += (index+1)+",";
//alert(sbstr);
return "<font style='color:red'>已上报</font>";
}else{
return "未上报";
}
}},
{field:'adlist',title:'已采用',width:50,formatter:function(value,rows,index){
var size = value.length;
if(size>=1){
cystr += (index+1)+",";
return "<font style='color:red'>已采用</font>";
}else{
return "未采用";
}
}},
{field:'cz',title:'操作',width:100,formatter:function(value,rows,index){
var id= rows.id;
var infotype = rows.infotype;
var href = "<a href='javascript:void(0);' class='alink' onclick='sbxx(\""+id+"\",\""+infotype+"\");'>上报</a> <a href='javascript:void(0);' class='alink' onclick='adopt_list("+id+","+infotype+")'>采用维护</a>";
return href;
}}
]],
onLoadSuccess:function(){
//alert(sbstr);
//var chks=$('#table1 input:checkbox').attr("disabled",'disabled');
//alert(chks.length);
var strs = sbstr.split(",");
//alert(strs.length);
for(var i=0;i<strs.length;i++){
//alert(strs);
$('#table1 input:checkbox').eq(strs[i]).attr("disabled",'disabled');
}
var strs2 = cystr.split(",");
for(var i=0;i<strs2.length;i++){
//alert(strs);
$('#table1 input:checkbox').eq(strs2[i]).attr("disabled",'disabled');
}
},
onLoadError:function(){
//alert('error');
},
onBeforeLoad:function(){
sbstr = "";
cystr = "";
},
toolbar: [{
text: '新增',
iconCls: 'icon-add',
handler: function(){
//var checkedRows=$('#dg').datagrid('getChecked');
//alert(checkedRows.length)
window.location.href='${ctx}/admgr/messmgr/article_add.jsp';
}
},'-', {
text: '删除',
iconCls: 'icon-cut',
handler: function () {
var checkedRows=$('#dg').datagrid('getChecked');
//alert(checkedRows.length)
if(checkedRows.length==0){
$.messager.show('提示', '请选择需要处理的数据',1500);
return;
}else{
var ids=[];
var infotypes = []
for(var i=0;i<checkedRows.length;i++){
if(checkedRows[i].ysb==2 || checkedRows[i].adlist.length>0){
alert("不能删除已上报或已采用的信息!请重新选择!");
return;
}
ids.push(checkedRows[i].id);
infotypes.push(checkedRows[i].infotype);
}
$.ajax({
type: "POST",
url: "${ctx }/admgr/messmgr/article_delete.do",
data: {ids:ids.join(","),infotypes:infotypes.join(";")},
success: function(msg){
$('#dg').datagrid('reload');
$.messager.show('提示', '删除成功',1500);
}
});
}
}
}, '-', {
text: '修改',
iconCls: 'icon-save',
handler: function () {
var checkedRows=$('#dg').datagrid('getChecked');
//alert(checkedRows.length)
if(checkedRows.length==0){
$.messager.show('提示', '请选择需要处理的数据',1500);
return;
}else{
var id=checkedRows[0].id;
var infotype=checkedRows[0].infotype;
window.location.href="${ctx}/admgr/messmgr/article_edit.do?id="+id+"&infotype="+infotype+"&level=2";
}
}
},'-', {
text: '返回',
iconCls: 'icon-undo',
handler: function () {
window.location.href="${ctx }/admgr/messmgr/article_list.jsp";
}
}]
});
var p = $('#dg').datagrid('getPager');
$(p).pagination({
pageSize: 10,//每页显示的记录条数,默认为10
pageList: [10,20,30],//可以设置每页记录条数的列表
beforePageText: '第',//页数文本框前显示的汉字
afterPageText: '页 共 {pages} 页',
displayMsg: '当前显示 {from} - {to} 条记录 共 {total} 条记录 '
});
query=function(){
var endTime="";
if($('#filter_LED_endTime').val()){
endTime = $('#filter_LED_endTime').val()+" 23:59:59"
}
$('#dg').datagrid('load',{
filter_LIKES_title: $('#filter_LIKES_title').val(),
filter_LIKES_author_OR_author2_OR_author3: $('#filter_LIKES_author').val(),
filter_LIKES_tjr: $('#filter_LIKES_tjr').val(),
filter_GED_sendTime:$('#filter_GED_beginTime').val(),
filter_LED_sendTime:endTime
});
}
});<div id="table1">
<table id="dg" >
</table>
</div>
看看onLoadSuccess方法,
http://www.oschina.net/code/snippet_942043_17664
或者点击标题处的全选框,灰化的checkbox依然被选中。楼主是想在灰化的时候即使被点击或全选灰化的checkbox是不被选中的。