【问题标题】:how to clear gridview using javascript or jquery如何使用 javascript 或 jquery 清除 gridview
【发布时间】:2013-07-13 14:59:55
【问题描述】:

我在页面上有一个网格视图和一个文件上传按钮。我让用户将他们的数据加载到我的站点,然后我解析他们的文件并加载到 gridview 上。然后使用 ajax 我更新了 javascript/jquery 我允许用户在 gridview 上编辑他们的数据。我的问题是一些应该很容易解决但我很难过的问题。一旦用户准备好提交 gridview 数据,我就有一个对 web 服务的 AJAX 调用,我发送网格上的所有信息。然后我想清除网格并基本上再次从一个干净的页面开始。但是我似乎无法清除网格视图。数据只是用原始数据在控件中不断刷新。我意识到这与绑定在服务器上但我无法解除绑定的事实有关!我试过了。

window.location.reload()

但所有这一切都让我从 Firefox 收到一条蹩脚的消息,告诉我页面将要刷新。

我从不同的人那里看到这个网站

Response.Redirect(Request.RawUrl);

但是我不知道如何从 Ajax 调用中触发它?我可以吗?我通过 Ajax 做所有事情,部分原因是因为这是我最舒服的地方,但我不想不得不在页面上放置另一个按钮并让用户必须单击该按钮才能重新启动它似乎很愚蠢。我想对我的命令进行整页刷新。反正有没有通过 AJAX 做到这一点?放置服务器按钮对我来说似乎不可行,因为一旦我在网格视图中加载数据,我就会使用 jquery 数据表和 jeditable 并且几乎可以在客户端上工作。 在这一点上,我愿意接受建议、想法、技巧和任何事情。对应该是一项简单的任务感到沮丧。 提前致谢 米格尔

【问题讨论】:

    标签: javascript jquery asp.net gridview


    【解决方案1】:

    要在不回发的情况下强制刷新整页,您可以将 window.location.href 值设置为当前的 window.location.href

    例如

    假设我们当前的作用域是你的网格数据 ajax 提交函数的成功回调,所以当页面重新加载时,所有新数据都会被获取。

    //reload the page now that data has been updated.
    window.location.href = window.location.href;
    

    【讨论】:

    • 谢谢 zeb 我一回到家就试试这个,我希望 dam gridview 发布数据。大声笑它把我的数据作为人质,它不会放手。
    • 据我了解,您无法执行服务器控制回发,因为您已大量修改客户端数据,以至于 .NET 会引发某种视图状态异常。如果您可以进行回发,但您似乎获得了旧数据,请尝试删除任何未对 Page.IsPostBack 进行数据绑定的检查
    • 刚刚尝试过,它在 Firefox 和 I.E 中都非常有用。谢谢你的提示。
    【解决方案2】:

    如果必须使用服务器控件,可以将其包装在 UpdatePanel 中。这将使其启用 ajax,但相当暴力。

    有来自 Telerik 等公司的不错的库,它们具有支持 ajax 的控件。这些要花一些钱,但如果你做了很多,这可能是值得的。

    另一个不支持服务器模板/数据绑定的选项是使用基于 jQuery 的网格,例如 jqQrid。

    【讨论】:

    • 我是一个可怜的开发伙伴。可悲的是。网络应该如此强大,但我无法让它做我想做的事。也许我只是头脑清醒,我现在正在手机上回复,但我会尝试你的更新面板的想法,并让你知道我如何判断它是否有效,奖励你他回答这个问题,谢谢你的回复。
    猜你喜欢
    • 2020-04-18
    • 1970-01-01
    • 2013-07-12
    • 2014-09-15
    • 2011-01-16
    • 2010-11-07
    • 1970-01-01
    • 2011-12-31
    • 1970-01-01
    相关资源
    最近更新 更多