手动触发slickgrid事件
我想手动触发slickgrid事件。例如:当我按向下箭头时,我想将当前单元格更改为下移。这是我只能做到的,当slickgrid是焦点,一旦焦点消失在网页上,按向下箭头不会改变活动单元格。
我试过这个:
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>SlickGrid example 1: Basic grid</title>
<link rel="stylesheet" href="mycss/slick.grid.css" type="text/css"/>
<link rel="stylesheet" href="mycss/smoothness/jquery-ui-1.8.16.custom.css" type="text/css"/>
<link rel="stylesheet" href="mycss/examples.css" type="text/css"/>
</head>
<body>
<div>
<p id="p_title"></p>
<p id="p_duration"></p>
<p id="p_Complete"></p>
<p id="p_start"></p>
<p id="p_finish"></p>
<p id="p_effort-driven"></p>
</div>
<table width="100%">
<tr>
<td valign="top" width="50%">
<div id="myGrid" style="width:600px;height:500px;"></div>
</td>
</tr>
</table>
<script src="js/lib/jquery-1.7.min.js"></script>
<script src="js/lib/jquery.event.drag-2.2.js"></script>
<script src="js/slick.core.js"></script>
<script src="js/slick.grid.js"></script>
<script src="js/slick.dataview.js"></script>
<script>
var grid;
var dataView;
var curr_row;
var columns = [
{id: "title", name: "Title", field: "title"},
{id: "duration", name: "Duration", field: "duration"},
{id: "%", name: "% Complete", field: "percentComplete"},
{id: "start", name: "Start", field: "start"},
{id: "finish", name: "Finish", field: "finish"},
{id: "effort-driven", name: "Effort Driven", field: "effortDriven"}
];
var options = {
enableCellNavigation: true,
enableColumnReorder: false
};
$(function () {
var data = [];
for (var i = 0; i < 50; i++) {
data[i] = {
id: i,
title: "Task " + i,
duration: "5 days",
percentComplete: Math.round(Math.random() * 100),
start: "01/01/2009",
finish: "01/05/2009",
effortDriven: (i % 5 == 0)
};
}
dataView = new Slick.Data.DataView();
dataView.setItems(data);
grid = new Slick.Grid("#myGrid", dataView, columns, options);
grid.onKeyDown.subscribe(function (e, args) {
if (e.which == 38) {
curr_row= args.row - 1;
sata(curr_row)
}
if (e.which == 40){
curr_row = args.row + 1;
sata(curr_row)
}
});
grid.onClick.subscribe(function (e, args){
curr_row = args.row;
sata(curr_row)
});
});
function sata(row){
var row_data = dataView.getItem(row); // Read from dataView not the grid data
var cell_contents = row_data['title'];
alert(cell_contents);
}
$(document).keydown(function(e) {
if (e.which == 38) {
curr_row= curr_row - 1;
grid.onClick.notify({row:curr_row})
}
if (e.which == 40){
curr_row = curr_row + 1;
grid.onClick.notify({row:curr_row})
}
});
</script>
</body>
</html>
但是,即使我现在可以获得活动的单元格数据,网格也没有更新(渲染未刷新)。
任何关于如何让slickgrid对这样的全球事件做出反应的建议都将受到高度赞赏。提前谢谢。
转载请注明出处:http://www.zhongtian365.com/article/20230523/1184156.html
随机推荐
-
有没有办法在monaco编辑器中手动触发验证?
我使用的是默认的TypeScript服务,模型是通过一个依赖于另一个模型的模型异步初始化的。有一种情况下,这两个模型无法检测到对方,因此它显示了语义错误。如果我在依赖模型中做了一些编辑,这会导致模型被重新验证,错误就会消失。我已经尝试手动s...
-
如何使用Rest API手动触发HBase均衡器命令?
在HBase外壳中,可以使用balancer命令触发平衡器。有没有一种方法可以使用提供的REST API做到这一点
-
是否手动触发FluentValidation?Asp.net核心
我正在尝试使用Asp.net Core2.0中的Fluent Validation。我能够按照说明将其挂接起来,但问题是,一旦它试图通过绑定,验证规则就会被检查。我不希望发生这种自动检查,因为它返回的格式与我想要的错误格式不同,因为我想以相...
-
如何仅手动触发Helm作业的运行?
为了调试的目的,我如何运行安装了卷的特定shell,而不自动运行它?我发现最好的是在2月29日运行cronjob,我可以手动触发它,它最终将按不需要的计划运行。另外,我可以使用kubernetes简单的pod模板来实现,但我需要helm模板...
-
c3.js -如何手动触发圆环弧的悬停?
我使用的是c3.js,并且有一个甜甜圈图表,当你将鼠标悬停在每个类别上时,它会在甜甜圈中包含自定义文本。我把所有这些都做得很好。我有一些与图表相关的自定义元素,但完全与图表分离…如果用户悬停在这些自定义元素上,我需要在特定的圆环弧上触发悬停...
-
Xcode / iOS模拟器:手动触发重大位置更改
有没有办法手动告诉设备发送重要的位置更改通知,该通知将唤醒为此通知注册的所有应用程序?这仅用于测试,我知道此私有API调用在提交到应用商店后会被拒绝。
-
手动触发django-simpleJWT身份验证
我试图改变django-rest-framework-simplejwt的用途,以一种完全不同的方式进行身份验证(在两个不同的请求中使用电话号码和短信验证码)。问题是,我已经开发了一切,但由于这个认证系统在项目中的紧密集成,我将不得不手动触...
-
有没有办法手动触发FilePond压缩/调整大小?
我正在使用FilePond和Doka来管理和编辑具有独特需求的表单上的图像上传,我希望在向FilePond添加文件时能够自动调整和/或压缩图像。我使用的是FilePond + Doka的React实现。图像大小调整和压缩已经配置好了,当用户...
-
js 绑定带参数的事件以及手动触发事件
1.html代码 复制代码 代码如下: div div id="tab" h2标题一/h2 h2标题二/h2 h2标题三/h2 h2标题四/h2 div dl id="tabcon" dd内容一/dd dd内容二/dd dd内容三/dd ...
-
如何设置bitbucket管道手动触发?
我在bitbucket环境中编写了一个管道,但我希望管道只在用户运行它时触发,而不是在推送或提交时自动触发。代码如下:pipelines: branches: new_ui_apk: - step: ...