风铃082 发表于 2015-12-29 18:50:49

通过ajax刷新页面后 gridview中的按钮都失效了,若通过超链接直接跳转就没有问题

通过ajax刷新页面后 gridview中的按钮都失效了,若通过超链接直接跳转就没有问题


ajax代码:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="1.aspx.cs" Inherits="_1" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
      <script type="text/javascript">
            function loadXMLDoc(i) {

                var url = i;
                var xmlhttp;
                if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari
                  xmlhttp = new XMLHttpRequest();
                }
                else {// code for IE6, IE5
                  xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
                }
                xmlhttp.onreadystatechange = function () {
                  if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
                        document.getElementById("myDiv").innerHTML = xmlhttp.responseText;
                  }
                }
                xmlhttp.open("POST", url, true);
                xmlhttp.send();
            }
      </script>
</head>
<body>
    <form id="form1" runat="server">
    <div>
   
   
    <a href="#">超链接</a>
      <div id="myDiv"

      style=" width:600px;margin:0 auto; text-align:center; font-size:12px; position:absolute; z-index:1; top: 303px; left: 421px;"></div>
    </form>
</body>
</html>



链接的前台代码:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="1.aspx.cs" Inherits="_1" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
      <script type="text/javascript">
            function loadXMLDoc(i) {

                var url = i;
                var xmlhttp;
                if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari
                  xmlhttp = new XMLHttpRequest();
                }
                else {// code for IE6, IE5
                  xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
                }
                xmlhttp.onreadystatechange = function () {
                  if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
                        document.getElementById("myDiv").innerHTML = xmlhttp.responseText;
                  }
                }
                xmlhttp.open("POST", url, true);
                xmlhttp.send();
            }
      </script>
</head>
<body>
    <form id="form1" runat="server">
    <div>
   
   
    <a href="#">超链接</a>
      <div id="myDiv"

      style=" width:600px;margin:0 auto; text-align:center; font-size:12px; position:absolute; z-index:1; top: 303px; left: 421px;"></div>
    </form>
</body>
</html>



链接的后台代码:
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;

public partial class _5 : System.Web.UI.Page
{

    //清清月儿http://blog.csdn.net/21aspnet
    SqlConnection sqlcon;
    SqlCommand sqlcom;
    string strCon = "Data Source=(local);Database=GHRQ;Uid=sa;Pwd=sa";
    protected void Page_Load(object sender, EventArgs e)
    {
      if (!IsPostBack)
      {
            bind();
      }
    }
    protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
    {
      GridView1.EditIndex = e.NewEditIndex;
      bind();
    }

    //删除
    protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e)
    {
      string sqlstr = "delete from tree where id='" + GridView1.DataKeys.Value.ToString() + "'";
      sqlcon = new SqlConnection(strCon);
      sqlcom = new SqlCommand(sqlstr, sqlcon);
      sqlcon.Open();
      sqlcom.ExecuteNonQuery();
      sqlcon.Close();
      bind();
    }

    //更新
    protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)
    {
      sqlcon = new SqlConnection(strCon);
      string sqlstr = "update tree set funcname='"
            + ((TextBox)(GridView1.Rows.Cells.Controls)).Text.ToString().Trim() + "',funcdesc='"
            + ((TextBox)(GridView1.Rows.Cells.Controls)).Text.ToString().Trim() + "',funcurl='"
            + ((TextBox)(GridView1.Rows.Cells.Controls)).Text.ToString().Trim() + "' where id='"
            + GridView1.DataKeys.Value.ToString() + "'";
      sqlcom = new SqlCommand(sqlstr, sqlcon);
      sqlcon.Open();
      sqlcom.ExecuteNonQuery();
      sqlcon.Close();
      GridView1.EditIndex = -1;
      bind();
    }

    //取消
    protected void GridView1_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e)
    {
      GridView1.EditIndex = -1;
      bind();
    }

    //绑定
    public void bind()
    {
      string sqlstr = "select * from tree";
      sqlcon = new SqlConnection(strCon);
      SqlDataAdapter myda = new SqlDataAdapter(sqlstr, sqlcon);
      DataSet myds = new DataSet();
      sqlcon.Open();
      myda.Fill(myds, "tree");
      GridView1.DataSource = myds;
      GridView1.DataKeyNames = new string[] { "ID" };//主键
      GridView1.DataBind();
      sqlcon.Close();
    }
}

页: [1]
查看完整版本: 通过ajax刷新页面后 gridview中的按钮都失效了,若通过超链接直接跳转就没有问题