jqGrid:单元格中的链接不可单击,也不可像

jqGrid:单元格中的链接不可单击,也不可像,jqgrid,hyperlink,cell,jqgrid-formatter,Jqgrid,Hyperlink,Cell,Jqgrid Formatter,我对jqGrid中的一列使用了自定义格式设置程序。以下是格式化程序: formatter: function(cellvalue, options, rowObject) { var link = $('<a>', { text: 'Click Me' href: '#', click: function() { alert('sdfsfsd'); // my stuff

我对jqGrid中的一列使用了自定义格式设置程序。以下是格式化程序:

formatter: function(cellvalue, options, rowObject) {
    var link = $('<a>', {
        text: 'Click Me'
        href: '#',
        click: function() {
           alert('sdfsfsd');
           // my stuff
        }
    });

    return link[0].outerHTML;
}
formatter:function(单元格值、选项、行对象){
变量链接=$(''{
文本:“单击我”
href:“#”,
单击:函数(){
警报(“SDFSD”);
//我的东西
}
});
返回链接[0]。outerHTML;
}
有两个问题:

  • 该链接不可单击。当我点击链接时,该行被选中!有没有办法不绕过行选择,但也使链接可点击?[更新:我尝试使用beforeSelectRow:函数(row,e){return false;}禁用选择。但仍然无法单击链接。我可以在html中看到单元格值确实是一个链接。]

  • 链接与链接不同,这意味着它不像往常一样是蓝色/下划线的。我还没有在CSS中跳过任何内容

非常感谢您的帮助

谢谢 拉古纳汉

更新:我发现这不是网格本身的问题。但是单击处理程序不会与超链接链接。我也尝试了这个代码,但没有运气

var link = $('<a>', {
    text: 'Click Me'
    href: '#'
}).click(function() {
   alert('sdfsfsd');
   // my stuff
});
var link=$(“”{
文本:“单击我”
href:“#”
})。单击(函数(){
警报(“SDFSD”);
//我的东西
});

谢谢

因为链接是动态创建的(使用jquery),然后使用该对象的HTML,所以处理程序将不是HTML的一部分。因此,在这种情况下,必须直接从字符串中创建链接:

formatter: function(cellvalue, options, row) {
    var handler = "someHandlerDefined(" + options.rowId + ")";
    return "<a href=# onclick='" + handler + "'>Link</a>";
}
格式化程序:函数(单元格值、选项、行){
var handler=“someHandlerDefined”(+options.rowId+”);
返回“”;
}
成功了