【问题标题】:Passing dataset or datatable between two pages u在两个页面之间传递数据集或数据表
【发布时间】:2017-06-09 14:57:42
【问题描述】:

我有一个弹出窗口来输入数据,一旦添加了数据,我需要在父页面 Gridview 中显示数据。但是,在我单击父页面中 Gridview 下方的保存按钮之前,不需要存储这些数据。它仍然会在屏幕上显示和维护 - (就像它有活动/非活动按钮一样)。

当我点击gridview下方的save时,它会一次全部存储在数据库中。我需要使用javascript来做到这一点。我该怎么做?

我正在开发 asp.net 网络项目。

【问题讨论】:

    标签: javascript datatable popup dataset parent-child


    【解决方案1】:

    例如,您可以使用 localStorage 而不是数据库来临时保存数据:

    localStorage.setItem('myDataName', 'myDataValue') // Save data
    

    还有:

    localStorage.getItem('myDataName') // Get data
    

    这适用于字符串。如果要保存对象或对象数组,必须将它们转换为字符串,如下所示:

    localStorage.setItem('myDataName', JSON.stringify(myObject)) // Save object
    

    【讨论】:

    • 感谢您的回复,但是如何让 localStorage 绑定数据网格。因为我必须在父页面的 gridview 中显示从弹出窗口添加的数据。
    • 您是在为您的项目使用自定义网格还是只是一个库?如果是这样,请告诉我您正在使用的库的名称,以便我进一步帮助您。
    • 不,它是简单的 asp:Gridview,我是使用数据集和 DataBind 方法绑定的。
    【解决方案2】:

    看看LocalStorage

    localStorage 属性允许您访问本地存储对象。 localStorage 类似于 sessionStorage。唯一的区别是 即,虽然存储在 localStorage 中的数据没有过期时间,但数据 浏览会话时,存储在 sessionStorage 中的内容被清除 结束——也就是说,当浏览器关闭时。

    需要注意的是,数据存储在 localStorage 或 sessionStorage 特定于页面的协议。

    存储数据

    localStorage.setItem('Key', 'YOUR_DATA');
    

    读取数据

    var YOUR_DATA = localStorage.getItem('Key');
    

    您还可以通过字符串化来存储对象。

    localStorage.setItem('Key', JSON.stringify(YOUR_DATA_OBJ));
    

    读取解析到对象时

    var YOUR_DATA_OBJ = JSON.parse(localStorage.getItem('Key'));
    

    【讨论】:

    • 感谢您的回复,但是如何让 localStorage 绑定数据网格。因为我必须在父页面的 gridview 中显示从弹出窗口添加的数据。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-30
    • 2011-02-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多