在不手动刷新asp.net的情况下如何在gridview中更新数据?

巴尔加夫

我已经创建了一个带有按钮控件和gridview控件的共享点Web部件。当我单击按钮控件时,将出现一个带有两个文本框名称和城市的新窗口。当我输入一些数据并单击“确定”时,该数据将被添加到gridview中。我已经使用JavaScript来获取此窗口。

问题:-实际的操作正在执行,并且数据正在添加到gridview。但是,在手动刷新页面之前,我无法在gridview中检查此新添加的数据。由于这不是理想的应用程序行为,因此有人可以建议我如何实现这一目标。

任何帮助将不胜感激...谢谢!

降压

需要刷新才能查看更新的数据。

如果要摆脱回发体验,则应将整个内容包装在更新面板中。

要以对asp.net友好的方式触发回发,请在页面上单击一个按钮。通过CSS隐藏它。通过js代码,您可以触发此按钮的点击。

编辑(代码):

在此处输入图片说明

简而言之,这就是我要完成的工作。我将“刷新”按钮置于可见状态。如果需要,可以将其包装在UpdatePanel中。

WebForm1.aspx:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="WebApp.PopupAdd.WebForm1" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>GridView Refresh Example</title>
    <script>
        function openPopup() {
            open('popup.aspx','_blank', 'height=300,width=200')
        }

        function refreshPage() {
            document.getElementById('btnRefresh').click();
        }
    </script>
</head>
<body>
    <h2>GridView refresh example</h2>
    <form id="form1" runat="server">
    <div>
        <asp:Button ID="btnRefresh" runat="server" Text="Refresh" OnClick="btnRefresh_Click" />
        <asp:Button ID="Button1" runat="server" OnClientClick="javascript:openPopup()" Text="Add" UseSubmitBehavior="False" />
        <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataKeyNames="Id" DataSourceID="SqlDataSource1">
            <Columns>
                <asp:BoundField DataField="Id" HeaderText="Id" InsertVisible="False" ReadOnly="True" SortExpression="Id" />
                <asp:BoundField DataField="StudentName" HeaderText="StudentName" SortExpression="StudentName" />
            </Columns>
        </asp:GridView>
        <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionString %>" SelectCommand="SELECT * FROM [Students]"></asp:SqlDataSource>
    </div>
    </form>
</body>
</html>

WebForm1.aspx.cs:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace WebApp.PopupAdd
{
    public partial class WebForm1 : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {

        }

        protected void btnRefresh_Click(object sender, EventArgs e)
        {
            GridView1.DataBind();
        }
    }
}

popup.aspx:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="popup.aspx.cs" Inherits="WebApp.PopupAdd.popup" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
    <script>
        function update() {
            window.opener.refreshPage();
            window.close();
        }
    </script>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox><asp:Button ID="Button1" runat="server" Text="Add" OnClick="Button1_Click" />
    </div>
    </form>
</body>
</html>

popup.aspx.cs:

using System;
using System.Collections.Generic;
using System.Configuration;
using System.Data.SqlClient;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace WebApp.PopupAdd
{
    public partial class popup : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {

        }

        protected void Button1_Click(object sender, EventArgs e)
        {
            var sql = "insert into students (studentname) values (@name)";
            SqlConnection cxn = new SqlConnection();
            cxn.ConnectionString = ConfigurationManager
                .ConnectionStrings["ConnectionString"].ConnectionString;
            var cmd = cxn.CreateCommand();
            cmd.CommandText = sql;
            cmd.Parameters.AddWithValue("@name", TextBox1.Text);
            cxn.Open();
            cmd.ExecuteNonQuery();
            cxn.Close();
            ClientScript.RegisterStartupScript(this.GetType(),"update", "update()", true);
        }
    }
}

我使用的表格是一个简单的学生表格,其中包含字段id,studentname。

我以前的建议是用CSS隐藏“刷新”按钮。style="visibility:hidden"

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在不手动设置每个属性的情况下更新数据库中的实体对象?

来自分类Dev

如何在不手动在SQL中手动键入列名的情况下透视表

来自分类Dev

如何手动刷新提升日志?

来自分类Dev

如何在不手动定义宽度的情况下居中放置div

来自分类Dev

如何在不手动修改文件的情况下编辑部署?

来自分类Dev

如何在不手动复制和粘贴的情况下遍历python生成的列表?

来自分类Dev

如何在不手动计算偏移的情况下以编程方式堆叠视图?

来自分类Dev

如何在不更新“搜索”输入字段的情况下手动搜索数据表

来自分类Dev

如何自动刷新日志,而不是手动刷新

来自分类Dev

如何在不手动列出查询中的所有值的情况下使用 SQL 创建分发表?

来自分类Dev

在不使用“ .insert” /不手动重新排序的情况下添加列时,如何在数据表中的特定位置插入列?

来自分类Dev

如何在不手动指定PK的情况下仅将唯一数据加载到我的oracle表中?

来自分类Dev

从Snowflake中的表流中手动刷新数据

来自分类Dev

从Snowflake中的表流中手动刷新数据

来自分类Dev

如何在手动刷新时注销用户

来自分类Dev

如何在不手动关闭选项卡的情况下保持Firefox的可用性?

来自分类Dev

如何在不手动关闭选项卡的情况下保持Firefox的可用性?

来自分类Dev

如何在不手动输入的情况下让tmux打开一组窗格?

来自分类Dev

如何在不选择“项目”的情况下创建新问题(手动选择 project_id)?

来自分类Dev

如何在不手动编写障碍的情况下将障碍分布到我的网格?

来自分类Dev

如何在不手动卸载较旧应用程序的情况下更新最新版本

来自分类Dev

如何在不刷新页面asp.net mvc的情况下使用ajax / javascript更新数据库

来自分类Dev

如何在不破坏角度数据绑定的情况下更新集合中的项目?

来自分类Dev

如何在Xaml(Windows 8应用)中手动更新/刷新ListView?

来自分类Dev

如何在ASP.Net WebForm中手动使缓存数据无效

来自分类Dev

如何在不刷新页面的情况下更新会话存储数据?

来自分类Dev

在这种情况下如何在asp.net中访问数据库?

来自分类Dev

形状与OrdinalEncoder中的手动类别不匹配

来自分类Dev

如何手动定位ASP.Net图表图例?

Related 相关文章

  1. 1

    如何在不手动设置每个属性的情况下更新数据库中的实体对象?

  2. 2

    如何在不手动在SQL中手动键入列名的情况下透视表

  3. 3

    如何手动刷新提升日志?

  4. 4

    如何在不手动定义宽度的情况下居中放置div

  5. 5

    如何在不手动修改文件的情况下编辑部署?

  6. 6

    如何在不手动复制和粘贴的情况下遍历python生成的列表?

  7. 7

    如何在不手动计算偏移的情况下以编程方式堆叠视图?

  8. 8

    如何在不更新“搜索”输入字段的情况下手动搜索数据表

  9. 9

    如何自动刷新日志,而不是手动刷新

  10. 10

    如何在不手动列出查询中的所有值的情况下使用 SQL 创建分发表?

  11. 11

    在不使用“ .insert” /不手动重新排序的情况下添加列时,如何在数据表中的特定位置插入列?

  12. 12

    如何在不手动指定PK的情况下仅将唯一数据加载到我的oracle表中?

  13. 13

    从Snowflake中的表流中手动刷新数据

  14. 14

    从Snowflake中的表流中手动刷新数据

  15. 15

    如何在手动刷新时注销用户

  16. 16

    如何在不手动关闭选项卡的情况下保持Firefox的可用性?

  17. 17

    如何在不手动关闭选项卡的情况下保持Firefox的可用性?

  18. 18

    如何在不手动输入的情况下让tmux打开一组窗格?

  19. 19

    如何在不选择“项目”的情况下创建新问题(手动选择 project_id)?

  20. 20

    如何在不手动编写障碍的情况下将障碍分布到我的网格?

  21. 21

    如何在不手动卸载较旧应用程序的情况下更新最新版本

  22. 22

    如何在不刷新页面asp.net mvc的情况下使用ajax / javascript更新数据库

  23. 23

    如何在不破坏角度数据绑定的情况下更新集合中的项目?

  24. 24

    如何在Xaml(Windows 8应用)中手动更新/刷新ListView?

  25. 25

    如何在ASP.Net WebForm中手动使缓存数据无效

  26. 26

    如何在不刷新页面的情况下更新会话存储数据?

  27. 27

    在这种情况下如何在asp.net中访问数据库?

  28. 28

    形状与OrdinalEncoder中的手动类别不匹配

  29. 29

    如何手动定位ASP.Net图表图例?

热门标签

归档