jQuery 单击事件在包含在光滑网格单元格中时不会为锚点触发
jQuery click event not firing for anchor when contained within slickgrid cell
我有光滑的网格设置来使用RowSelectionModel
以及一个包含超链接设置的列,使用自定义格式化程序(稍微修改以保护无辜者):
function linkFormatter(row, cell, value, columnDef, dataContext) {
return "<a href='#' rel='XYZ'>View</a>";
}
使用以下单击事件处理程序:
$('a[rel=XYZ]').on('click',function (e) {
$(this).replaceWith('some html');
});
上述处理程序永远不会为网格内的链接触发。 如果我在光滑网格之外创建链接,它工作正常,表明我的选择器和函数有效。
如果我将 JavaScript 函数挂接到 <a>
标签中,它可以正常工作,但我真的宁愿让我的 js 不显眼。 关于我可以做些什么来为嵌入在光滑网格单元格中的超链接触发点击处理程序的任何建议?
$('PARENT_ELEMENT').on('click','a[rel=XYZ]',function (e) {
$(this).replaceWith('some html');
});
只需确保在绑定事件时'PARENT_ELEMENT'
存在即可。最安全的方法是使用'body'
或document
作为'PARENT_ELEMENT'
。
我没有
使用过 slickgrid,但我怀疑您在填充网格之前附加了事件处理程序。是否有可以参与onGridDataLoaded
或类似事件?
此处的示例使用如下内容:
loader.onDataLoaded.subscribe(function () {
// rewire handlers
})
正如 Tim 所说,你可以像这样使用同样的东西:
$(document).on('click', 'a[rel=XYZ]', function (e) {
$(this).replaceWith('some html');
});
相关文章:
- 如何删除包含包含某些数据的单元格的表行
- PHPExcel搜索/返回单元格中包含特定值的所有行
- 使用内部脚本更改表单元格 css,而不依赖于 id、类或包含
- jQuery - 删除表格行(如果任何单元格包含介于 X 和 Y 之间的值)
- getValues() 从包含引用的单元格中检索值时返回 0.0
- 如何从包含
元素的 javascript 变量中获取单元格数据 - jQuery 单击事件在包含在光滑网格单元格中时不会为锚点触发
- jQuery UI 可排序:检测表单元格中是否已包含项目
- 使用查询选择器查找同级行中包含的下一个单元格
- 如何向 Javascript 表添加一行,其中包含包含 jQuery 中的日期选择器函数的单元格
- 启用 JQ 网格上的“保存”按钮,其中包含内联编辑和单元格编辑
- 打开一个模式对话框,其中包含单击表格单元格时的动态数据
- 如果单元格中的文本包含特定单词,则在其中放入图像
- 如何在使用包含.getValue()的自动脚本时绕过单元格中的空白值
- 当一个单元格包含Javascript代码时,无法使用fputcsv正确构建CSV
- 忽略包含下拉列表的网格视图单元格
- 如果子单元格包含特定值,则将类应用于父行
- 表单可以包含在html表格的单元格中吗?
- HTML或Javascript按钮来改变图片大小或单元格(包含图片)的大小
- 当单元格包含该颜色名称时更改背景颜色