• ASP.NET程序中常用代码汇总(三)


    /*摘自http://blog.csdn.net/dotnetgroup/archive/2005/11/28/538401.aspx*/

    21.如何设定全局变量

    Global.asax中
      Application_Start()事件中
      添加Application[属性名] = xxx;
      就是你的全局变量

    22.怎样作到HyperLinkColumn生成的连接后,点击连接,打开新窗口?

    HyperLinkColumn有个属性Target,将器值设置成"_blank"即可.(Target="_blank")

      【ASPNETMENU】点击菜单项弹出新窗口

      在你的menuData.xml文件的菜单项中加入URLTarget="_blank",如:

    <?xml version="1.0" encoding="GB2312"?>
    <MenuData ImagesBaseURL="images/"> 
    <MenuGroup>
    <MenuItem Label="内参信息" URL="Infomation.aspx" >
    <MenuGroup ID="BBC">
    <MenuItem Label="公告信息" URL="Infomation.aspx" URLTarget="_blank" LeftIcon="file.gif"/>
    <MenuItem Label="编制信息简报" URL="NewInfo.aspx" LeftIcon="file.gif" />


      最好将你的aspnetmenu升级到1.2版

    23.读取DataGrid控件TextBox值

    foreach(DataGrid dgi in yourDataGrid.Items)
    {
     TextBox tb 
    = (TextBox)dgi.FindControl("yourTextBoxId");
     tb.Text.
    }

    24.在DataGrid中有3个模板列包含Textbox分别为 DG_ShuLiang (数量) DG_DanJian(单价) DG_JinE(金额)分别在5.6.7列,要求在录入数量及单价的时候自动算出金额即:数量*单价=金额还要求录入时限制为 数值型.我如何用客户端脚本实现这个功能?

    <asp:TemplateColumn HeaderText="数量"> 
    <ItemTemplate>
    <asp:TextBox id="ShuLiang" runat=’server’ Text=’<%# DataBinder.Eval(Container.DataItem,"DG_ShuLiang")%>’ 
    onkeyup="javascript:DoCal()"
    />

    <asp:RegularExpressionValidator id="revS" runat="server" ControlToValidate="ShuLiang" ErrorMessage="must be integer" ValidationExpression="^/d+$" />
    </ItemTemplate>
    </asp:TemplateColumn>

    <asp:TemplateColumn HeaderText="单价"> 
    <ItemTemplate>
    <asp:TextBox id="DanJian" runat=’server’ Text=’<%# DataBinder.Eval(Container.DataItem,"DG_DanJian")%>’ 
    onkeyup="javascript:DoCal()"
    />

    <asp:RegularExpressionValidator id="revS2" runat="server" ControlToValidate="DanJian" ErrorMessage="must be numeric" ValidationExpression="^/d+(/./d*)?$" />

    </ItemTemplate>
    </asp:TemplateColumn>

    <asp:TemplateColumn HeaderText="金额"> 
    <ItemTemplate>
    <asp:TextBox id="JinE" runat=’server’ Text=’<%# DataBinder.Eval(Container.DataItem,"DG_JinE")%>’ />
    </ItemTemplate>
    </asp:TemplateColumn><script language="javascript">
    function DoCal()
    {
     var e = event.srcElement;
     var row = e.parentNode.parentNode;
     var txts = row.all.tags("INPUT");
     if (!txts.length || txts.length < 3)
      return;

     var q = txts[txts.length-3].value;
     var p = txts[txts.length-2].value;

     if (isNaN(q) || isNaN(p))
      return;

     q = parseInt(q);
     p = parseFloat(p);

     txts[txts.length-1].value = (q * p).toFixed(2);
    }
    </script>

    25.datagrid选定比较底下的行时,为什么总是刷新一下,然后就滚动到了最上面,刚才选定的行因屏幕的关系就看不到了。
           page_load
       page.smartNavigation=true
    26.在Datagrid中修改数据,当点击编辑键时,数据出现在文本框中,怎么控制文本框的大小 ?

    private void DataGrid1_ItemDataBound(obj sender,DataGridItemEventArgs e)
    {
     
    for(int i=0;i<e.Item.Cells.Count-1;i++
    )
      
    if(e.Item.ItemType==
    ListItemType.EditType)
      
    {
       e.Item.Cells[i].Attributes.Add(
    "Width""80px"
    )
      }
     
    }

    27.对话框

    private static string ScriptBegin = "<script language=/"JavaScript/"";
    private static string ScriptEnd = "</script>"
    ;

    public static void ConfirmMessageBox(string PageTarget,string
     Content)
    {
     
    string ConfirmContent="var retValue=window.confirm(’"+Content+"’);"+"if(retValue){window.location=’"+PageTarget+"’;}"
    ;

     ConfirmContent
    =ScriptBegin + ConfirmContent +
     ScriptEnd;

     Page ParameterPage 
    =
     (Page)System.Web.HttpContext.Current.Handler;
     ParameterPage.RegisterStartupScript(
    "confirm"
    ,ConfirmContent);
     
    //Response.Write(strScript);

    }

    28.将时间格式化:string aa=DateTime.Now.ToString("yyyy年MM月dd日");

       1.1 取当前年月日时分秒 
    currentTime
    =System.DateTime.Now;
      
    1.2 取当前年 
    int 年= DateTime.Now.Year;
      
    1.3 取当前月 
    int 月= DateTime.Now.Month; 
      
    1.4 取当前日 
    int 日= DateTime.Now.Day; 
      
    1.5 取当前时 
    int 时= DateTime.Now.Hour; 
      
    1.6 取当前分 
    int 分= DateTime.Now.Minute; 
      
    1.7 取当前秒 
    int 秒= DateTime.Now.Second; 
      
    1.8 取当前毫秒 
     int 毫秒= DateTime.Now.Millisecond;

    29.自定义分页代码

    //先定义变量 :
    public static int pageCount; //总页面数 
    public static int curPageIndex=1//当前页面 
      
    //下一页: 
    if(DataGrid1.CurrentPageIndex < (DataGrid1.PageCount - 1)) 

     DataGrid1.CurrentPageIndex 
    += 1
     curPageIndex
    +=1
    }
     
    bind(); 
    // DataGrid1数据绑定函数 
      
    //上一页: 
    if(DataGrid1.CurrentPageIndex >0

     DataGrid1.CurrentPageIndex 
    += 1
     curPageIndex
    -=1
    }
     
    bind(); 
    // DataGrid1数据绑定函数 
      
    //直接页面跳转: 
    int a=int.Parse(JumpPage.Value.Trim());//JumpPage.Value.Trim()为跳转值 

    if(a<DataGrid1.PageCount) 

     
    this.DataGrid1.CurrentPageIndex=a; 
    }
     
    bind(); 

    30.DataGrid使用

    //添加删除确认: 

    private void DataGrid1_ItemCreated(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e) 

     
    foreach(DataGridItem di in this.DataGrid1.Items) 
     

      
    if(di.ItemType==ListItemType.Item||di.ItemType==ListItemType.AlternatingItem) 
      

       ((LinkButton)di.Cells[
    8].Controls[0]).Attributes.Add("onclick","return confirm(’确认删除此项吗?’);"); 
      }
     
     }
     
    }
     

      
    //样式交替: 

    ListItemType itemType 
    = e.Item.ItemType; 

    if (itemType == ListItemType.Item ) 

     e.Item.Attributes[
    "onmouseout"= "javascript:this.style.backgroundColor=’#FFFFFF’;"
     e.Item.Attributes[
    "onmouseover"= "javascript:this.style.backgroundColor=’#d9ece1’;cursor=’hand’;" ; 
    }
     
    else if( itemType == ListItemType.AlternatingItem) 

     e.Item.Attributes[
    "onmouseout"= "javascript:this.style.backgroundColor=’#a0d7c4’;"
     e.Item.Attributes[
    "onmouseover"= "javascript:this.style.backgroundColor=’#d9ece1’;cursor=’hand’;" ; 
    }
     

      
    //添加一个编号列: 

    DataTable dt
    = c.ExecuteRtnTableForAccess(sqltxt); //执行sql返回的DataTable 
    DataColumn dc=dt.Columns.Add("number",System.Type.GetType("System.String")); 

    for(int i=0;i<dt.Rows.Count;i++

     dt.Rows[i][
    "number"]=(i+1).ToString(); 
    }
     

    DataGrid1.DataSource
    =dt; 
    DataGrid1.DataBind(); 

      
    //DataGrid1中添加一个CheckBox,页面中添加一个全选框 

    private void CheckBox2_CheckedChanged(object sender, System.EventArgs e) 

     
    foreach(DataGridItem thisitem in DataGrid1.Items) 
     

      ((CheckBox)thisitem.Cells[
    0].Controls[1]).Checked=CheckBox2.Checked; 
     }
     
    }
     

     
    // 将当前页面中DataGrid1显示的数据全部删除 

    foreach(DataGridItem thisitem in DataGrid1.Items) 

     
    if(((CheckBox)thisitem.Cells[0].Controls[1]).Checked) 
     

      
    string strloginid= DataGrid1.DataKeys[thisitem.ItemIndex].ToString(); 
      Del (strloginid); 
    //删除函数 
     }
     
    }
     

       1.1 取当前年月日时分秒 
    currentTime
    =System.DateTime.Now;
      
    1.2 取当前年 
    int 年= DateTime.Now.Year;
      
    1.3 取当前月 
    int 月= DateTime.Now.Month; 
      
    1.4 取当前日 
    int 日= DateTime.Now.Day; 
      
    1.5 取当前时 
    int 时= DateTime.Now.Hour; 
      
    1.6 取当前分 
    int 分= DateTime.Now.Minute; 
      
    1.7 取当前秒 
    int 秒= DateTime.Now.Second; 
      
    1.8 取当前毫秒 
     int 毫秒= DateTime.Now.Millisecond;

    29.自定义分页代码

    //先定义变量 :
    public static int pageCount; //总页面数 
    public static int curPageIndex=1//当前页面 
      
    //下一页: 
    if(DataGrid1.CurrentPageIndex < (DataGrid1.PageCount - 1)) 

     DataGrid1.CurrentPageIndex 
    += 1
     curPageIndex
    +=1
    }
     
    bind(); 
    // DataGrid1数据绑定函数 
      
    //上一页: 
    if(DataGrid1.CurrentPageIndex >0

     DataGrid1.CurrentPageIndex 
    += 1
     curPageIndex
    -=1
    }
     
    bind(); 
    // DataGrid1数据绑定函数 
      
    //直接页面跳转: 
    int a=int.Parse(JumpPage.Value.Trim());//JumpPage.Value.Trim()为跳转值 

    if(a<DataGrid1.PageCount) 

     
    this.DataGrid1.CurrentPageIndex=a; 
    }
     
    bind(); 

    30.DataGrid使用

    //添加删除确认: 

    private void DataGrid1_ItemCreated(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e) 

     
    foreach(DataGridItem di in this.DataGrid1.Items) 
     

      
    if(di.ItemType==ListItemType.Item||di.ItemType==ListItemType.AlternatingItem) 
      

       ((LinkButton)di.Cells[
    8].Controls[0]).Attributes.Add("onclick","return confirm(’确认删除此项吗?’);"); 
      }
     
     }
     
    }
     

      
    //样式交替: 

    ListItemType itemType 
    = e.Item.ItemType; 

    if (itemType == ListItemType.Item ) 

     e.Item.Attributes[
    "onmouseout"= "javascript:this.style.backgroundColor=’#FFFFFF’;"
     e.Item.Attributes[
    "onmouseover"= "javascript:this.style.backgroundColor=’#d9ece1’;cursor=’hand’;" ; 
    }
     
    else if( itemType == ListItemType.AlternatingItem) 

     e.Item.Attributes[
    "onmouseout"= "javascript:this.style.backgroundColor=’#a0d7c4’;"
     e.Item.Attributes[
    "onmouseover"= "javascript:this.style.backgroundColor=’#d9ece1’;cursor=’hand’;" ; 
    }
     

      
    //添加一个编号列: 

    DataTable dt
    = c.ExecuteRtnTableForAccess(sqltxt); //执行sql返回的DataTable 
    DataColumn dc=dt.Columns.Add("number",System.Type.GetType("System.String")); 

    for(int i=0;i<dt.Rows.Count;i++

     dt.Rows[i][
    "number"]=(i+1).ToString(); 
    }
     

    DataGrid1.DataSource
    =dt; 
    DataGrid1.DataBind(); 

      
    //DataGrid1中添加一个CheckBox,页面中添加一个全选框 

    private void CheckBox2_CheckedChanged(object sender, System.EventArgs e) 

     
    foreach(DataGridItem thisitem in DataGrid1.Items) 
     

      ((CheckBox)thisitem.Cells[
    0].Controls[1]).Checked=CheckBox2.Checked; 
     }
     
    }
     

     
    // 将当前页面中DataGrid1显示的数据全部删除 

    foreach(DataGridItem thisitem in DataGrid1.Items) 

     
    if(((CheckBox)thisitem.Cells[0].Controls[1]).Checked) 
     

      
    string strloginid= DataGrid1.DataKeys[thisitem.ItemIndex].ToString(); 
      Del (strloginid); 
    //删除函数 
     }
     
    }
     
  • 相关阅读:
    向对象(OO)程序设计
    gVim安装vim-template插件后提示Undefined variable vim_template_subtype/Press ENTER or type command to continue
    基于JQuery easyui,gson的批量新增/修改和删除-servlet版
    Java正则表达式-匹配正负浮点数
    自己写的ORM工具
    秋色园学习测试项目
    把aspx页面生成的cs文件放到其他类库中,以实现对其的封装操作.
    杭州蚂蚁中台技术部-22届应届生-校招实习
    博客园开博
    开发随手记
  • 原文地址:https://www.cnblogs.com/kofkyo/p/2297333.html
Copyright © 2020-2023  润新知