Javascript 在JQGrid中,在img上添加onclick事件
我是JQuery的新手,遇到了一些麻烦Javascript 在JQGrid中,在img上添加onclick事件,javascript,jqgrid,Javascript,Jqgrid,我是JQuery的新手,遇到了一些麻烦 function Clients(guid) { var that = this; this.guid = guid; this.container = $("#Clients_" + that.guid); this.LoadClients = function () { var ids = that.container.find("#clients-tbl").getDataIDs(); for (var i = 0; i <
function Clients(guid)
{
var that = this;
this.guid = guid;
this.container = $("#Clients_" + that.guid);
this.LoadClients = function () {
var ids = that.container.find("#clients-tbl").getDataIDs();
for (var i = 0; i < ids.length; i++) {
var row = that.container.find("#clients-tbl").getRowData(ids[i]);
var imgView = "<img src='../../Content/Images/vcard.png' style='cursor:pointer;' alt='Open case' onclick=OnClickImage(" + ids[i] + "); />";
that.container.find("#clients-tbl").setRowData(ids[i], { CasesButtons: imgView });
}
}
this.CreateClientsGrid = function () {
var clientsGrid = that.container.find("#widget-clients-tbl").jqGrid({
.....
ondblClickRow:function(rowid)
{
---
}
loadComplete: function () {
that.LoadClients();
}
}
this.OnClickImage=function(idClient){
....
}
this.Init = function () {
that.CreateClientsGrid();
};
this.Init();
}
函数客户端(guid)
{
var=这个;
this.guid=guid;
this.container=$(“#Clients"+that.guid);
this.LoadClients=函数(){
var id=that.container.find(“#clients tbl”).getDataId();
对于(变量i=0;i
问题在于onclick,因为OnClickImage不是全局函数。
如何使用OnClickImage函数?您可以以不同的方式绑定到
单击事件。例如,您可以按照的方式进行操作。顺便说一句,它作为getRowData
和setRowData
工作得更快。此外,您应该保存that.container.find(“#clients tbl”)的结果
在循环外的变量中操作,并在循环内使用该变量。JavaScript是动态语言,每次操作都会执行ids。每次都会执行length
还有一种方法是使用onCellSelect
event而不使用单击事件绑定。请查看哪种方法描述了该方法并给出了相应的演示。使用event onCellSelected,我对ondblClickRow有问题。@shemmer:你对ondblClickRow
有什么问题?你可以在选择之前使用w
而不是onCellSelected
。不要忘记在选择行之前从返回true
。如果要解决问题,应该更清楚地解释问题。发布代码是最好的选择。