[转]Asp.Net中经常用到的一些小技巧

   警告窗口
   /// <summary>
   /// 服务器端弹出alert对话框
   /// </summary>
   /// <param name="str_Message">提示信息,例子:"不能为空!"</param>
   /// <param name="page">Page类</param>
   public  void Alert( string str_Message,Page page)
  {
   page.RegisterStartupScript("","<script>alert('"+str_Message+"');</script>");
  }

  重载此警告窗口,使某控件获得焦点

   /// <summary>
   /// 服务器端弹出alert对话框,并使控件获得焦点
   /// </summary>
   /// <param name="str_Ctl_Name">获得焦点控件Id值,比如:txt_Name</param>
   /// <param name="str_Message">提示信息,例子:"请输入您姓名!"</param>
   /// <param name="page">Page类</param>
   public  void Alert( string str_Ctl_Name, string str_Message,Page page)
  {
   page.RegisterStartupScript("","<script>alert('"+str_Message+"');document.forms(0)."+str_Ctl_Name+".focus(); document.forms(0)."+str_Ctl_Name+".select();</script>");
  }

    确认对话框

   /// <summary>
   /// 服务器端弹出confirm对话框
   /// </summary>
   /// <param name="str_Message">提示信息,例子:"您是否确认删除!"</param>
   /// <param name="btn">隐藏Botton按钮Id值,比如:btn_Flow</param>
   /// <param name="page">Page类</param>
   public  void Confirm( string str_Message, string btn,Page page)
  {
   page.RegisterStartupScript("","<script> if (confirm('"+str_Message+"')==true){document.forms(0)."+btn+".click();}</script>");
  }

   重载确认对话框,点击确定触发一个隐藏按钮事件,点击取消触发一个隐藏按钮事件

   /// <summary>
   ///  服务器端弹出confirm对话框,询问用户准备转向那些操作,包括“确定”和“取消”时的操作
   /// </summary>
   /// <param name="str_Message">提示信息,比如:"成功增加数据,单击/"确定/"按钮填写流程,单击/"取消/"修改数据"</param>
   /// <param name="btn_Redirect_Flow">"确定"按钮id值</param>
   /// <param name="btn_Redirect_Self">"取消"按钮id值</param>
   /// <param name="page">Page类</param>
   public  void Confirm( string str_Message, string btn_Redirect_Flow, string btn_Redirect_Self,Page page)
  {
   page.RegisterStartupScript("","<script> if (confirm('"+str_Message+"')==true){document.forms(0)."+btn_Redirect_Flow+".click();}else{document.forms(0)."+btn_Redirect_Self+".click();}</script>");
  }
  

   获得焦点

   /// <summary>
   /// 使控件获得焦点
   /// </summary>
   /// <param name="str_Ctl_Name">获得焦点控件Id值,比如:txt_Name</param>
   /// <param name="page">Page类</param>
   public  void GetFocus( string str_Ctl_Name,Page page)
  {
   page.RegisterStartupScript("","<script>document.forms(0)."+str_Ctl_Name+".focus(); document.forms(0)."+str_Ctl_Name+".select();</script>");
  }

  子窗体返回主窗体

   ///<summary>
   ///名称:redirect
   ///功能:子窗体返回主窗体
   ///参数:url
   ///返回值:空
   ///</summary>
   public  void redirect( string url,Page page)
  {
    if ( Session["IfDefault"]!=( object)"Default")
   {    
    page.RegisterStartupScript("","<script>window.top.document.location.href='"+url+"';</script>");
   }
  }

   判断是否为数字

   /// <summary>
   /// 名称:IsNumberic
   /// 功能:判断输入的是否是数字
   /// 参数:string oText:源文本
   /// 返回值: bool true:是 false:否
   /// </summary>
  
   public  bool IsNumberic( string oText)
  {
    try
   {
     int var1=Convert.ToInt32 (oText);
     return  true;
   }
    catch
   {
     return  false;
   }
  }

   获得字符串实际长度(包括中文字符)
   //获得字符串oString的实际长度
   public  int StringLength( string oString)
  {
   byte[] strArray=System.Text .Encoding.Default .GetBytes (oString);
    int res=strArray.Length ;
    return res;
  }

  将回车转换为TAB

   //当在有keydown事件的控件上敲回车时,变为tab
   public  void Tab(System.Web .UI.WebControls .WebControl webcontrol)
  {
   webcontrol.Attributes .Add ("*onKeyDown*", "if(event.keyCode==13) event.keyCode=9");
  }

   datagrid分页中如果删除时出现超出索引
   public  void jumppage(System.Web.UI.WebControls.DataGrid dg)
  {
    int int_PageLess;  //定义页面跳转的页数
    //如果当前页是最后一页
    if(dg.CurrentPageIndex == dg.PageCount-1)
   {
     //如果就只有一页
     if(dg.CurrentPageIndex == 0)
    {
      //删除后页面停在当前页
     dg.CurrentPageIndex  = dg.PageCount-1;   
    }
     else
    {
      //如果最后一页只有一条记录
      if((dg.Items.Count % dg.PageSize == 1) || dg.PageSize == 1)
     {
       //把最后一页最后一条记录删除后,页面应跳转到前一页 
      int_PageLess  = 2;
     }
      else       //如果最后一页的记录数大于1,那么在最后一页删除记录后仍然停在当前页
     {
      int_PageLess  = 1;
     }
     dg.CurrentPageIndex  = dg.PageCount  - int_PageLess;
    }
   }
  }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值