首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在asp listview中清除数据表?

如何在asp listview中清除数据表?
EN

Stack Overflow用户
提问于 2018-06-05 04:36:26
回答 2查看 48关注 0票数 0

当我使用下面的代码时,我删除了DataTable值,但是数据表结构仍然存在,并且显示空字段(参见图片),DOM浏览器显示一个空表和表行。

如何清除DataTable值和表本身?这样当我再次重新填充搜索时,空的较小的表就不存在了吗?

代码语言:javascript
复制
lvwOutput.Items.Clear();

lvwOutput.DataSource = null;

lvwOutput.DataBind();

在此之前

在items.clear之后,数据源= null

EN

回答 2

Stack Overflow用户

发布于 2018-06-05 05:01:01

您可以创建一个在会话中存储数据表的属性,这样您就可以在单击事件期间访问它。

代码语言:javascript
复制
DataTable dtbleDataSource
{
    get
    {
        return Session["dataSource"] as DataTable
    }
    set
    {
        Session["dataSource"] = value;
    }
}

在单击事件中,您可以说:

代码语言:javascript
复制
dtbleDataSource.Reset();
票数 0
EN

Stack Overflow用户

发布于 2018-06-05 05:41:13

这很可笑,我相信有一种更好的方法可以做到这一点,但永无止境的服务器/客户端之争使这一点变得更加困难。绑定到数据表的列表视图称为lvwOutput。

在我的btnClear中,我必须输入以下内容。您不能隐藏该元素或清除服务器端asp代码中的项才能正常工作。

代码语言:javascript
复制
ScriptManager.RegisterStartupScript(Page, GetType(), "emptyTable", "javascript:emptyTableRows(); ", true);

在我的javascript代码中,我必须放入以下内容,这将清除客户端代码

代码语言:javascript
复制
  function emptyTableRows(){
      var tableHeaderRowCount = 0;
      var table = document.getElementById('lvwOutputTable');
      var rowCount = table.rows.length;
      for (var i = tableHeaderRowCount; i < rowCount; i++) {
          table.deleteRow(tableHeaderRowCount);
      }
  }

然后在我的代码中,当用户启动另一个sql搜索时,它将显示listview和datatable。这将清除服务器端。

代码语言:javascript
复制
lvwOutput.Items.Clear();
lvwOutput.DataSource = null;
lvwOutput.DataBind();
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50688399

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档