1. <script type="text/javascript">
$(function() {
$('#mTb').datagrid({
idField : 'id',
title : '项目表',
url : '${pageContext.request.contextPath}/matter/matterList.action',
fit : true,
width : '100%',
border : false,
loadMsg : '数据加载中...',
pageSize : 3,
pageList : [ 3, 6, 9 ],
pagination : true,
fitColumns : true,
rownumbers : true,
singleSelect : true,
striped : true,
nowrap : true,
frozenColumns : [ [
{
field : 'id',
title : '编号',
rowspan : 3,
width : 50
}, {
field : 'name',
title : '文件名',
width : 50,
rowspan : 3
}, {
field : 'oldfilename',
title : '名称',
width : 50,
rowspan : 3
},{field:'opt',title:'操作',width:150,align:'center',
formatter:function(value,rec)
{
var btn1 = '<a class="editcls" onclick="newRoleEdit(\''+rec.id+'\')" href="javascript:void(0)" rel="external nofollow" rel="external nofollow" rel="external nofollow" >编辑</a>';
var btn2 = '<a class="delecls" onclick="removeRole(\''+rec.id+'\')" href="javascript:void(0)" rel="external nofollow" rel="external nofollow" rel="external nofollow" >删除</a>';
return btn1+btn2;
}
}
]],
onLoadSuccess:function(data){
$('.editcls').linkbutton({text:'编辑',plain:true,iconCls:'icon-edit'});
$('.delecls').linkbutton({text:'删除',plain:true,iconCls:'icon-remove'});
$('.editcls').click(function(){
alert("111");
});
$('.delecls').click(function(index){
alert("22");
});
$('#mTb').datagrid('fixRowHeight');
}
});
$('#mTb').datagrid('hideColumn', 'oldfilename');
});
</script>
<body>
<table id="mTb">
</table>
</body>
问题1 单击编辑或是删除按钮 alert弹框有效果 但是报错
问题2 单击怎样获取点击行数据
自己写的代码1
自己写的代码2
newRoleEdit放到window作用域下,不要放到其他函数内部,这样是私有函数,html拼接的函数需要在window作用域下,无法访问私有域下的函数或者变量
你不是传入了id,调用getRows获取所有数据行,遍历对比下id键的值一致就得到了
function newRoleEdit(id){
var rows=$('#dg').datagrid('getRows'),row
//注意修改
for(var i=0;i<rows.length;i++)if(rows[i].id==id){row=rows[i];break;}
//row就是点击编辑对应的行对象,你的其他代码
}
应该不能用Dialog吧
如果是需要操作获取行数据,可以使用datagrid的formatter列属性 {
field: 'caozuo', title: '操作', width: 180, align: 'center',
formatter: function (value, rowData, rowIndex) {
return getActionItems(rowData, rowIndex);
}
}
value 获取单列字段值、rowData获取整行字段列值、rowIndex得到行索引 。
getActionItems 你可以在这里自定义你的操作方式
function getActionItems(rowData) {
var items = "";
if (rowData.IsOwner == 0) {
items += ' 详情';
}
else {
items += ' 详情';
}
return items;
}
如果是需要操作获取行数据,可以使用datagrid的formatter列属性 {
field: 'caozuo', title: '操作', width: 180, align: 'center',
formatter: function (value, rowData, rowIndex) {
return getActionItems(rowData, rowIndex);
}
}
value 获取单列字段值、rowData获取整行字段列值、rowIndex得到行索引 。
getActionItems 你可以在这里自定义你的操作方式
function getActionItems(rowData) {
var items = "";
if (rowData.IsOwner == 0) {
items += ' 详情';
}
else {
items += ' 详情';
}
return items;
}