邁克老貓(MikeCat)
來自:老貓の理想
在這裡給大家提供一些平時經常容易用到的效果的解決方案。我把一些效果封裝在了一個類庫檔案中。
警告視窗
/// <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;
}
}
}
平時經常用到的代碼,本人水平有限如有疏漏之處,還請指出!
在這裡要感謝豔輝、阿好(hbzxf)的鼎立支援!