我想检索特定的列名并在其上执行事件。怎么做 。 ?使用dojox.grid.datagrid。就像目前我的网格中有3列或字段(ID,名称,电子邮件)。我想要一个特定的列电子邮件。当我单击该列下的任何值时,不应打开该对话框。但是当我点击任何其他位置(在特定行的其他2列上)时,它会打开。
答案 0 :(得分:4)
您可以连接网格的onCellClick事件并从参数中获取行/列信息。例如:
dojo.connect(grid, "onCellClick", function (e) {
var colField = e.cell.field; // field name
var rowIndex = e.rowIndex; // row index
....
});
并根据这些信息在事件处理程序中添加逻辑。
答案 1 :(得分:0)
如果要在单击该列中的值(而不是整个单元格,包括单元格中的空格)时打开对话框,则可以使用该字段的格式函数并返回作为锚点的HTML元素或任何其他可点击的HTML。
例如:
在网格结构中:
columns: [{
label: "Email",
attr: "emailid",
formatter: formatEmail
},
...
function formatEmail(data, item, store) {
return "<a href='mailto:" + data + "'>" + item.nameOfPerson + "</a>";
}