【问题标题】:Dynamic Javascript in Partial Page Postback部分页面回发中的动态 Javascript
【发布时间】:2010-12-29 22:09:21
【问题描述】:

我正在使用tablesorter jQuery 插件对我的表格进行排序。我使用它的网站是在 .Net 3.5 中编程的,我正在使用 ASP.NET AJAX 和更新面板来执行我的异步页面更新。

我遇到的问题是在使用表格排序器时,我有一些列要禁用排序。我有以下 javascript 代码可以这样做,

function pageLoad(sender, args) {
        // Set table sorting in the load event so this takes care of partial page postbacks
        $$("gvRosters").tablesorter({
            sortList: [[0, 0]],
            widgets: ['zebra'],
            8: {
               // disable it by setting the property sorter to false
               sorter: false
            } 
        });
    }

我要隐藏的列是第 9 列,一切正常。我将此代码放在 pageLoad 函数中,以便它可以在部分回发上运行,它确实如此。问题是我有一个链接按钮,它在页面上调用异步更新,这会更改表中的可见列。所以我需要隐藏的第 9 列变成了需要隐藏的第 12 列。我不确定用于重新连接隐藏列的正确方法,以便它显示为:

function pageLoad(sender, args) {
        // Set table sorting in the load event so this takes care of partial page postbacks
        $$("gvRosters").tablesorter({
            sortList: [[0, 0]],
            widgets: ['zebra'],
            11: {
               // disable it by setting the property sorter to false
               sorter: false
            } 
        });
    }

而不是部分回发。基本上我需要做的是在部分回发时再次运行此代码(在 pageLoad 函数中它已经这样做了),但我还需要动态更改运行的 javascript 代码以禁用对正确列的排序。感谢您就这个问题提供的任何见解。

【问题讨论】:

    标签: jquery asp.net-ajax tablesorter


    【解决方案1】:

    创建2个javascript方法,

    1. 在第一页加载时初始化(用于 9 列),

    2. 下次你修改你的列时(变成 12 列)。

    最初直接从您的 javascript 代码中调用方法 1。在从链接按钮异步回发时,您可以使用

    调用第二个 javascript 方法
    ScriptManager.RegisterStartupScript
    

    希望这会有所帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-05-16
      • 2020-03-28
      • 2014-07-13
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多