Строка подсказки onHover SlickGrid по
Я новичок с 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]);
}
});
1 ответ:
Один из вариантов получения информации-подписка на события сетки
onMouseEnter
иonMouseLeave
. Вы можете использовать любую подсказку lib, которую вы хотите, чтобы текст следовал за мышью.Используйте событие, чтобы узнать, в какой ячейке вы находитесь выше. Я использую dataview, поэтому нужно использовать
view.getItem
в случае, если какие-либо строки были отфильтрованы. Если вы просто показываете данные без фильтрации, я думаю, чтоdata[cell.row]
будет работать вместо этого, но вам нужно будет протестировать.Это только даст вам информацию, чтобы положить в tooltip, вам нужно будет использовать что-то вроде 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); });