CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
山寨机中的战斗机! 程序优化工程师到底对IT界有没有贡献
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  ASP.NET

为什么我update后不能刷新?反而全屏白色?

楼主superdullwolf(超级大笨狼,每天要自强,MVP)2005-01-27 00:56:22 在 .NET技术 / ASP.NET 提问

private   void   FillDataGrid()  
  {  
      //   创建新的dataset   包含类别纪录  
   
    DataSet   dsNorthwind   =   new   DataSet("Employees");  
   
      //   从数据库中重新获得纪录,填充   dataset    
      daNorthwind.Fill(dsNorthwind);  
   
      //     设置DataGrid的DataSource   属性  
      dgNorthwind.DataSource   =   dsNorthwind.Tables[0].DefaultView;  
   
      //   绑定  
      dgNorthwind.DataBind();  
  }  
   
     
   
  private   void   calHire_SelectionChanged(object   sender,   System.EventArgs   e)  
  {  
      //   如果选错日期会出错,必须选今天以前的日期。  
      if   (calHire.SelectedDate   <=   DateTime.Today)  
      {  
          //   创建dataset   包含新纪录  
        DataSet   dsTemp   =   new   DataSet();  
   
          dsTemp.ReadXml(@"E:\bookcode\asp.net数据库入门\datastores\Employees.xml");  
   
          //   插入新行  
          DataRow   r   =   dsTemp.Tables[0].NewRow();  
          r["LastName"]   =   "Ferracchiati";  
          r["FirstName"]   =   "Fabio   C.";  
          r["HireDate"]   =   Convert.ToDateTime(calHire.SelectedDate);  
   
          //   插入一行   dataset的rows集合  
          dsTemp.Tables[0].Rows.Add(r);  
   
          //   使用临时dataset更新数据集  
          daNorthwind.Update(dsTemp,   "EMPLOYEE");  
   
          //   刷新data   grid   现实新纪录  
          FillDataGrid();  
      }  
      else  
          Response.Write("Hire   date   can't   be   in   the   future!");  
          Response.End();  
  } 问题点数:20、回复次数:3Top

1 楼superdullwolf(超级大笨狼,每天要自强,MVP)回复于 2005-01-27 01:02:43 得分 0

纪录已经插入,数据库中可以看出来,但是postback后全屏白色,无HTML代码。  
  全部代码如下:  
  <%@   Import   namespace="System.Data"   %>  
  <%@   Import   namespace="System.Data.SqlClient"   %>  
   
  <html>  
      <head>  
          <title>Inserting   Calendar   and   XML   Data</title>  
      </head>  
      <body>  
          <form   id="Form1"   runat="server"   method="post">  
  <asp:label   id="lblRecords"   runat="server"   />  
   
              <table   id="Table1"  
                            style="Z-INDEX:   101;   LEFT:   7px;   POSITION:   absolute;   TOP:   7px"  
                            cellSpacing="0"   cellPadding="0"   width="300"   border="0">  
                  <tr>  
                      <td   style="WIDTH:   681"   colSpan="2">  
                          <asp:DataGrid   id="dgNorthwind"   runat="server"   Width="479"  
                                          Height="191"   BorderColor="#CC9966"   BorderWidth="1"  
                                          BorderStyle="None"   BackColor="White"   CellPadding="4"  
                                          DataKeyField="EmployeeID"   AutoGenerateColumns="False"   >  
   
                            <SelectedItemStyle   Font-Bold="True"   ForeColor="#663399"   BackColor="#FFCC66"   />  
                              <ItemStyle   ForeColor="#330099"   BackColor="White"   />  
                              <HeaderStyle   Font-Bold="True"     ForeColor="#FFFFCC"   BackColor="#990000"   />  
                              <FooterStyle   ForeColor="#330099"   BackColor="#FFFFCC"   />  
   
  <Columns>  
  <asp:BoundColumn   DataField="FirstName"   HeaderText="First   Name"   />  
  <asp:BoundColumn   DataField="LastName"   HeaderText="Last   Name"   />  
  <asp:BoundColumn   DataField="HireDate"   HeaderText="Hire   Date"   />  
  </Columns>  
   
                              <PagerStyle   HorizontalAlign="Center"     ForeColor="#330099"   BackColor="#FFFFCC"   />  
                          </asp:DataGrid>  
                      </td>  
                  </tr>  
                  <tr>  
                      <td   style="WIDTH:   681;   HEIGHT:   49"   colSpan="2">  
                          <asp:Label   id="Label1"   runat="server"   Height="45"   Width="480"  
                                                BackColor="Maroon"   Font-Bold="True"   ForeColor="#FFE0C0">  
                              选择日历插入数据                         </asp:Label>  
                      </td>  
                  </tr>  
                  <tr>  
                      <td   style="WIDTH:   681"   colSpan="2">  
                          <asp:Calendar   id="calHire"   runat="server"  
                                      OnSelectionChanged="calHire_SelectionChanged"  
                                      BorderColor="#FFCC66"   Height="153"   Width="479"  
                                      BackColor="#FFFFCC"   BorderWidth="1"   ForeColor="#663399"  
                                      EnableViewState="False"   ShowGridLines="True"  
                                      Font-Names="Verdana"   Font-Size="8pt">  
                              <TodayDayStyle   ForeColor="White"   BackColor="#FFCC66"   />  
                              <SelectorStyle   BackColor="#FFCC66"   />  
                              <NextPrevStyle   Font-Size="9pt"   ForeColor="#FFFFCC"   />  
                              <DayHeaderStyle   Height="1"   BackColor="#FFCC66"   />  
                              <SelectedDayStyle   Font-Bold="True"   BackColor="#CCCCFF"   />  
                              <TitleStyle   Font-Size="9pt"   Font-Bold="True"    
                                                      ForeColor="#FFFFCC"   BackColor="#990000"   />  
                              <OtherMonthDayStyle   ForeColor="#CC9966"   />  
                          </asp:Calendar>  
                      </td>  
                  </tr>  
                  <tr>  
                      <td   style="WIDTH:   681"   colSpan="2">  
                          <asp:Label   id="lbError"   runat="server"   ForeColor="Red"   />  
                      </td>  
                  </tr>  
              </table>  
          </form>  
      </body>  
  </html>  
   
  <script   language="c#"   runat="server">  
  SqlConnection   objConnection;  
  SqlDataAdapter   daNorthwind;  
  DataSet   dsNorthwind;  
     
  private   void   Page_Load(object   sender,   System.EventArgs   e)  
  {  
      String   strConnection   =   ConfigurationSettings.AppSettings["NWind"];  
      SqlConnection   objConnection   =   new   SqlConnection(strConnection);  
   
      String   strSQL   =   "SELECT   EmployeeID,   LastName,   FirstName,   HireDate   FROM   Employees";  
      daNorthwind   =   new   SqlDataAdapter(strSQL,   objConnection);  
   
      SqlCommandBuilder   cb   =   new   SqlCommandBuilder(daNorthwind);  
   
        if   (!Page.IsPostBack)  
        {  
          FillDataGrid();  
        }  
  }  
   
     
  private   void   FillDataGrid()  
  {  
      //   创建新的dataset   包含类别纪录  
   
    DataSet   dsNorthwind   =   new   DataSet("Employees");  
   
      //   从数据库中重新获得纪录,填充   dataset    
      daNorthwind.Fill(dsNorthwind);  
   
      //     设置DataGrid的DataSource   属性  
      dgNorthwind.DataSource   =   dsNorthwind.Tables[0].DefaultView;  
   
      //   绑定  
      dgNorthwind.DataBind();  
  }  
   
     
   
  private   void   calHire_SelectionChanged(object   sender,   System.EventArgs   e)  
  {  
      //   如果选错日期会出错,必须选今天以前的日期。  
      if   (calHire.SelectedDate   <=   DateTime.Today)  
      {  
          //   创建dataset   包含新纪录  
        DataSet   dsTemp   =   new   DataSet();  
   
          dsTemp.ReadXml(@"E:\bookcode\asp.net数据库入门\datastores\Employees.xml");  
   
          //   插入新行  
          DataRow   r   =   dsTemp.Tables[0].NewRow();  
          r["LastName"]   =   "Ferracchiati";  
          r["FirstName"]   =   "Fabio   C.";  
          r["HireDate"]   =   Convert.ToDateTime(calHire.SelectedDate);  
   
          //   插入一行   dataset的rows集合  
          dsTemp.Tables[0].Rows.Add(r);  
   
          //   使用临时dataset更新数据集  
          daNorthwind.Update(dsTemp,   "EMPLOYEE");  
   
          //   刷新data   grid   现实新纪录  
          FillDataGrid();  
      }  
      else  
          Response.Write("Hire   date   can't   be   in   the   future!");  
          Response.End();  
  }  
  </script>Top

2 楼superdullwolf(超级大笨狼,每天要自强,MVP)回复于 2005-01-27 06:04:36 得分 0

相同的VB代码就没问题  
  <%@   Import   namespace="System.Data"   %>  
  <%@   Import   namespace="System.Data.SqlClient"   %>  
   
  <html>  
      <head>  
          <title>Inserting   Calendar   and   XML   Data</title>  
      </head>  
      <body>  
          <form   id="Form1"   runat="server"   method="post">  
              <table   id="Table1"  
                            style="Z-INDEX:   101;   LEFT:   7px;   POSITION:   absolute;   TOP:   7px"  
                            cellSpacing="0"   cellPadding="0"   width="300"   border="0">  
                  <tr>  
                      <td   style="WIDTH:   681"   colSpan="2">  
                          <asp:DataGrid   id="dgNorthwind"   runat="server"   Width="479"  
                                          Height="191"   BorderColor="#CC9966"   BorderWidth="1"  
                                          BorderStyle="None"   BackColor="White"   CellPadding="4"  
                                          DataKeyField="EmployeeID"   AutoGenerateColumns="False">  
   
                            <SelectedItemStyle   Font-Bold="True"  
  ForeColor="#663399"   BackColor="#FFCC66"   />  
                              <ItemStyle   ForeColor="#330099"   BackColor="White"   />  
                              <HeaderStyle   Font-Bold="True"  
                                                        ForeColor="#FFFFCC"   BackColor="#990000"   />  
                              <FooterStyle   ForeColor="#330099"   BackColor="#FFFFCC"   />  
                              <Columns>  
                                <asp:BoundColumn   DataField="FirstName"   HeaderText="First   Name"   />  
                                <asp:BoundColumn   DataField="LastName"   HeaderText="Last   Name"   />  
                                <asp:BoundColumn   DataField="HireDate"   HeaderText="Hire   Date"   />  
                              </Columns>  
                              <PagerStyle   HorizontalAlign="Center"  
                                                      ForeColor="#330099"   BackColor="#FFFFCC"   />  
                          </asp:DataGrid>  
                      </td>  
                  </tr>  
                  <tr>  
                      <td   style="WIDTH:   681;   HEIGHT:   49"   colSpan="2">  
                          <asp:Label   id="Label1"   runat="server"   Height="45"   Width="480"  
                                                BackColor="Maroon"   Font-Bold="True"   ForeColor="#FFE0C0">  
                              By   selecting   a   date   from   the   calendar,   you  
                              will   insert   a   new   record   in   the   database.  
                          </asp:Label>  
                      </td>  
                  </tr>  
                  <tr>  
                      <td   style="WIDTH:   681"   colSpan="2">  
                          <asp:Calendar   id="calHire"   runat="server"  
                                      OnSelectionChanged="calHire_SelectionChanged"  
                                      BorderColor="#FFCC66"   Height="153"   Width="479"  
                                      BackColor="#FFFFCC"   BorderWidth="1"   ForeColor="#663399"  
                                      EnableViewState="False"   ShowGridLines="True"  
                                      Font-Names="Verdana"   Font-Size="8pt">  
                              <TodayDayStyle   ForeColor="White"   BackColor="#FFCC66"   />  
                              <SelectorStyle   BackColor="#FFCC66"   />  
                              <NextPrevStyle   Font-Size="9pt"   ForeColor="#FFFFCC"   />  
                              <DayHeaderStyle   Height="1"   BackColor="#FFCC66"   />  
                              <SelectedDayStyle   Font-Bold="True"   BackColor="#CCCCFF"   />  
                              <TitleStyle   Font-Size="9pt"   Font-Bold="True"    
                                                      ForeColor="#FFFFCC"   BackColor="#990000"   />  
                              <OtherMonthDayStyle   ForeColor="#CC9966"   />  
                          </asp:Calendar>  
                      </td>  
                  </tr>  
                  <tr>  
                      <td   style="WIDTH:   681"   colSpan="2">  
                          <asp:Label   id="lbError"   runat="server"   ForeColor="Red"   />  
                      </td>  
                  </tr>  
              </table>  
          </form>  
      </body>  
  </html>  
   
  <script   language="VB"   runat="server">  
  Dim   objConnection   As   SqlConnection  
  Dim   daNorthwind   As   SqlDataAdapter  
  Dim   dsNorthwind   As   DataSet  
   
  Sub   Page_Load(Source   As   Object,   E   As   EventArgs)  
   
      Dim   strConnection   As   String   =   ConfigurationSettings.AppSettings("NWind")  
      objConnection   =   New   SqlConnection(strConnection)  
   
      Dim   strSQL   As   String   =   "SELECT   EmployeeID,   LastName,   FirstName,   HireDate   "   &   _  
                                                    "FROM   Employees"  
      daNorthwind   =   New   SqlDataAdapter(strSQL,   objConnection)  
   
      Dim   cb   As   New   SqlCommandBuilder(daNorthwind)  
   
      If   Not   Page.IsPostBack   Then  
          FillDataGrid()  
      End   If  
  End   Sub  
   
  Sub   FillDataGrid()  
   
      '   Create   a   new   dataset   to   contain   categories'   records  
      dsNorthwind   =   New   DataSet()  
   
      '   Fill   the   dataset   retrieving   data   from   the   database  
      daNorthwind.Fill(dsNorthwind)  
   
      '   Set   the   DataSource   property   of   the   DataGrid  
      dgNorthwind.DataSource   =   dsNorthwind.Tables(0).DefaultView  
   
      '   Bind   the   dataset   data   to   the   DataGrid  
      dgNorthwind.DataBind()  
  End   Sub  
   
  Sub   calHire_SelectionChanged(Source   As   Object,   E   As   EventArgs)  
   
      '   If   the   user   chooses   a   date   in   the   future,   an   error   message   is   displayed  
      If   calHire.SelectedDate   <=   Today()   Then  
   
          '   Create   a   temporary   dataset   to   contain   the   new   record  
          Dim   dsTemp   As   New   DataSet()  
   
          dsTemp.ReadXml("E:\bookcode\asp.net数据库入门\datastores\Employees.xml")  
   
          '   Create   a   new   row  
          Dim   r   As   DataRow   =   dsTemp.Tables(0).NewRow()  
          r("LastName")   =   "Ferracchiati"  
          r("FirstName")   =   "Fabio   C."  
          r("HireDate")   =   Convert.ToDateTime(calHire.SelectedDate)  
   
          '   Add   the   new   row   into   the   dataset's   rows   collection  
          dsTemp.Tables(0).Rows.Add(r)  
   
          '   Update   the   database   using   the   temporary   dataset  
          daNorthwind.Update(dsTemp,   "EMPLOYEE")  
   
          '   Refresh   the   data   grid   to   display   the   new   record  
          FillDataGrid()  
      Else  
          Response.Write("Hire   date   can't   be   in   the   future!")  
          Response.End()  
      End   If  
  End   Sub  
  </script>Top

3 楼zhjihui080220(zhjihui)回复于 2005-01-27 08:10:28 得分 20

if()  
  {  
   
  }  
  else  
  {  
  Response.Write(...);  
  Response.End();  
  }  
  if...else...是要有大括号的  
  Top

相关问题

  • 怎样控制刷新下面的页面时使白色背景消失!
  • 全屏窗体?
  • 全屏编辑:
  • asp的全屏
  • 全屏显示。
  • 全屏窗口
  • 如何全屏???
  • SDI里面重画的时候默认是用白色刷新一次,如何定义为一幅图象?
  • 刷新……
  • onClick 让 IE 全屏

关键词

得分解答快速导航

  • 帖主:superdullwolf
  • zhjihui080220

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo