【问题标题】:Obout Grid add objects only on the client-sideObout Grid 仅在客户端添加对象
【发布时间】:2013-10-23 18:05:49
【问题描述】:

我正在使用一个大表单,在这个表单中我有大约 3 个网格和许多 texbox,我想在这些网格中创建新元素而不需要刷新所有页面, 这样我就可以一次发布所有表格。

我正在尝试只在客户端进行更新删除添加的操作,没有任何帖子。

已编辑

我使用 AJAX 调用并使用 ViewState 作为 DataTable 成功地实现了这些操作。 这是因为 CallBackMode 属性,但在我看来,这是一个不必要的 POST,即使它是一个 AJAX 调用,因为它只能在客户端由 javaScript 处理。

我的网格如下所示。

<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional">
        <ContentTemplate>
            <asp:Panel ID="Panel2" runat="server">
                <obout:Grid ID="Grid1" AllowPageSizeSelection="false" AllowSorting="false" AllowMultiRecordSelection="false"
                    AllowAddingRecords="true" FolderLocalization="~/Localization/Grid" FolderStyle="~/Styles/grid/premiere_blue"
                    AutoGenerateColumns="false" DataKeyNames="id" AllowPaging="false" runat="server"
                    Serialize="true" CallbackMode="true" ClientIDMode="Static">
                    <Columns>
                        <obout:Column ID="Column1" Visible="false" HeaderText="Edit" Width="100" />
                        <obout:Column ID="Column2" DataField="pro_ncm" HeaderText="NCM" runat="server" Width="20%" />
                        <obout:Column ID="Column3" DataField="pro_descricao" HeaderText="Principais Produtos Fabricados"
                            Width="20%" Wrap="true" runat="server" />
                        <obout:Column ID="Column4" DataField="pro_capacidade" HeaderText="Capacidade Produtiva/Ano"
                            Width="20%" Wrap="true" runat="server" />
                    </Columns>
                </obout:Grid>
            </asp:Panel>
        </ContentTemplate>
    </asp:UpdatePanel>

【问题讨论】:

    标签: asp.net grid client-side obout


    【解决方案1】:

    简短的回答是:

    <obout:Grid id="grid1" CallbackMode=false" ...
    

    或使用 javascript 动态:

    grid1.CallbackMode = false
    

    【讨论】:

    • 这将完全关闭它,您是否需要能够在页面的生命周期内切换回发?
    • 感谢@web_bod 的回答,我把它弄错了,但是在网格中添加了一个新行。但是当我尝试添加一个新的时,它在 javaScript 中给出了一个错误:“this.LoadingMessageContainer is null”(在 FireFox 中)
    • 更新您的问题以解释您想要实现的目标,也许可以提供帮助。
    • CallBackMode 的问题在于它不会关闭 POST,它只是使其成为 AJAX 调用,来自 obout 文档:“当 Grid 处于回调模式时,所有操作(排序、分页、编辑等)在不重新加载页面的情况下执行,使用 AJAX 回调。"
    【解决方案2】:

    在 obout 网站上有一个示例可以完成您的要求:http://www.obout.com/grid/commands/aspnet_commands_client_side_changes.aspx

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-10-14
      • 2013-10-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-05-31
      • 2011-02-27
      相关资源
      最近更新 更多