相关疑难解决方法(0)

使用JQuery创建链接的最佳方法?

我们使用jqGrid自定义格式化程序在JQuery网格中输出链接.我们只是使用String操作构建链接a:

var s = "<a title=\"Blah\" href=\"javascript:BlahFunc('" + options.rowId + "')\">This is blah<a>";
Run Code Online (Sandbox Code Playgroud)

有没有更"聪明"的方法来使用JQuery创建链接(和其他表单元素)?

jquery jqgrid

23
推荐指数
4
解决办法
8万
查看次数

jqgrid showLink

我使用showlink formatter将列作为链接​​.有什么方法可以在我点击它时调用javascript函数.

现在这是我的代码

$("#list").jqGrid(  

{
     url: '..',
    datatype: 'json', //We specify that the datatype we will be using will be JSON
    colNames:['ID', 'User Name'],      
                colModel :[
     {name:'id',index:'id', width:110, sorttype:"string", formatter: 'showlink', formatoptions:{baseLinkUrl:'index.cfm'}},
Run Code Online (Sandbox Code Playgroud)

...

我不想使用baselinkUrl.相反,我可以在点击URL时调用Javascript函数吗?当我使用'showlink'格式化程序时,我的表单数据似乎也没有发布到下一个屏幕.

jquery jqgrid

6
推荐指数
1
解决办法
2万
查看次数

浏览器内存使用情况比较:内联onClick与使用JQuery .bind()

我在页面上有大约400个元素,它们有点击事件(4个不同类型的按钮,每个按钮有100个实例,每个类型的点击事件执行相同的功能,但参数不同).

我需要尽可能减少对性能的任何影响.通过将点击事件单独绑定到每个(使用JQuery),我采取了什么样的性能(内存等bind())?onclick相反,在每个按钮上调用内联函数会更有效吗?

编辑以澄清:):
我实际上有一个表(使用JQGrid生成),每行有数据列,后跟4个图标'按钮'列 - 删除和其他三个使AJAX调用回服务器的业务函数:

|id|description|__more data_|_X__|_+__|____|____|
-------------------------------------------------
| 1|___data____|____data____|icon|icon|icon|icon|  
| 2|___data____|____data____|icon|icon|icon|icon|   
| 3|___data____|____data____|icon|icon|icon|icon|   
| 4|___data____|____data____|icon|icon|icon|icon|    

我正在使用JQGrid的自定义格式化程序(http://www.trirand.com/jqgridwsiki/doku.php?id=wiki:custom_formatter)在每行中构建图标"按钮"(我无法从服务器检索按钮HTML).

在我的自定义格式化程序函数中,我可以轻松地在内联中构建图标HTML和代码,onclick使用适当的参数调用相应的函数(来自该行中其他列的数据).我使用行列中的数据作为我的函数的参数.

    function removeFormatter(cellvalue, options, rowObject) {       
        return "<img src='img/favoritesAdd.gif' onclick='remove(\"" + options.rowId + "\")' title='Remove' style='cursor:pointer' />";
    }
Run Code Online (Sandbox Code Playgroud)

所以,我可以想到两个选项:
1)内联onclick,如上所述 -
或 -
2)delegate()(如下面的答案所述(非常感谢!))

  1. 使用自定义格式化程序构建图标图像(每种图标类型都有自己的类名).
  2. data()afterInsertRow JQGrid事件中将图标设置为其参数.
  3. delegate()处理程序应用于特定类的按钮(如下文所述@KenRedler)
>    $('#container').delegate('.your_buttons','click',function(e){  
>      e.preventDefault();  
>      var your_param = $(this).data('something'); // store your params in data, perhaps …
Run Code Online (Sandbox Code Playgroud)

jquery memory-management onclick jqgrid

6
推荐指数
1
解决办法
1万
查看次数

JqG​​rid需要超链接 - 需要通过Jquery捕获值

我的代码中有以下内容:

      { name: 'ID', index: 'ID', width: 40 , formatter: 'showlink', search: false, formatoptions: { baseLinkUrl: '/Program/EditMicro'} },
Run Code Online (Sandbox Code Playgroud)

当我点击PNum时,会发生什么事情,它会转到以下actionresult我的控制器:

    /Program/EditMicro
Run Code Online (Sandbox Code Playgroud)

我想要的是通过Jquery在所选内容(选择了什么ID)上捕获该信息,因为我想在发送到以下ActionResult之前做一些json

    /Program/EditMicro
Run Code Online (Sandbox Code Playgroud)

所以,回顾一下,无论如何都要捕获超链接点击的价值,然后我可以在Jquery中捕获它.

先感谢您

jquery jqgrid

2
推荐指数
1
解决办法
9080
查看次数

标签 统计

jqgrid ×4

jquery ×4

memory-management ×1

onclick ×1