[轉]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;
    }
   }
  }
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章