我和jquery的新手。
我有一个任务是在一个slickgrid的每一行上放一个工具提示。 我知道怎么做它。但是,阅读slickgrid文档时,“hover”或“tooltip”等选项中没有任何内容。
我的电话就是这样:
var grid = new gridd.Grid("#ite", result,
[{ id: "var1", field: "var1" },
{ id: "var2", field: "var2" },
{ id: "var3", field: "var3", width: 100, resizable: false },
{ id: "var4", field: "var4", width: 110, resizable: false}],
{ forceFitColumns: true },
//I thought of something like
{ onHover: function.. },
//
{ onClick: function (e, row, cell) {
var result = this.getData();
postSomething(result[row]);
}
});
答案 0 :(得分:5)
获取信息的一个选项是订阅网格的事件onMouseEnter
和onMouseLeave
。您可以使用任何工具提示库,您希望文本跟随鼠标。
使用该事件来发现您所在的单元格。我使用数据视图,因此需要使用view.getItem
以防过滤任何行。如果您只是在不过滤的情况下显示数据,我相信data[cell.row]
会起作用,但您需要进行测试。
这只会让您获得放在工具提示中的信息,您需要使用this之类的东西在鼠标后的工具提示中获取它。对于我的测试,我刚刚更新了一个标签(id = boringLabel
)并且标签更新正确。
var grid = new Slick.Grid(selector, view, cols, opts);
....
grid.onMouseLeave.subscribe(function(e, args) {
$("#boringLabel").text("NONE");
});
grid.onMouseEnter.subscribe(function(e, args) {
var cell = args.grid.getCellFromEvent(e);
var item = view.getItem(cell.row);
$("#boringLabel").text(item.id + " " + item.description);
});