easyui的datagrid单击某一栏同时触发onClickRow和其中一栏的自定义事件怎么办?
自己的解决方法:
我的需求是这样子的:
点击easyui -datagrid一行的时候需要弹出框显示文章内容
当点击一行中点击下载那一栏的时候进行下载
问题是,当点击下载的时候也会触发onClickRow事件
所以我的解决办法是设置了一个变量来判断究竟是触发哪个的事件
代码如下:
// JQuery入口 var SELECTDOCID = null; var ARTICL_CONTENT = null; var ISOneRow = 1;//判断是否是 datagrid的一行被触发 1表示是一行被点击,0表示超链接被点击
//初始化文档管理页签 function Init_DocManagement() { //先设置多语言 // 预算列表说明设置标题 $(".div_DocFileList").panel("setTitle", SYS_LANGUAGE.UI_LANGUAGE_JSON['Budget folder list']); //设置表格的多语言标题 $('#docList_Table').datagrid({ singleSelect: true, fitColumns: true, columns: [[ { field: 'DOCBH', title: SYS_LANGUAGE.UI_LANGUAGE_JSON['DOCBH'], width: 150 }, { field: 'DOCMC', title: SYS_LANGUAGE.UI_LANGUAGE_JSON['DOCMC'], width: 150 }, { field: 'DOCID', hidden: true, width: 150 }, { field: 'DOCNR', hidden: true, width: 150 }, { field: 'FJNAME', hidden: true, width: 150 }, { field: 'DOCDOWN', title: SYS_LANGUAGE.UI_LANGUAGE_JSON['DOCDOWN'], width: 150, formatter: function (value, row, index) { SELECTDOCID = row; return "<a href='javascript:void(0)' onclick='download()' style='text-decoration:none'>下载</a>"; } } ]], onClickRow: function (index, row) { if (ISOneRow == 1) { openArticle(row.DOCMC, row.DOCNR); } else { ISOneRow = 1; } } }); //处理数据加载 Init_DocTree(); }
//下载文件 function download() { //先赋值 ISOneRow = 0; // alert(row.DOCID); var DOCID = SELECTDOCID.DOCID; var url = "../AjaxToWcf/AjaxToWcf.ashx"; var serverParam = { docId: DOCID }; var ajaxParams = { serverUrl: "BS_DocumentManage/DownLoadFile", serverParam: parent.JSON.stringify(serverParam), requestType: "POST", IsAsync: true, language: parent.SYS_LANGUAGE.SYS_LANGUAGE }; var names = []; parent.CommonAjaxRequest(url, ajaxParams, function (_data) { Loaded(); var jsonData = parent.JSON.parse(_data); //datagrid加载 // $('#docList_Table').datagrid('loadData', jsonData); names = jsonData.url; if (names.length <= 0) { $.messager.alert('提示', '该文档没有附件', 'info'); return; } var str = names.join(','); window.location.href = "../DocumentManagement/DownFile.ashx?fileName=" + str; }); }
easyui的datagrid单击某一栏同时触发onClickRow和其中一栏的自定义事件怎么办?
原文地址:http://blog.csdn.net/u010158775/article/details/43227215