关闭

asp.net中常用的一些小技巧

标签: asp.netredirectstringdatagrid服务器url
683人阅读 评论(0) 收藏 举报
分类:
在这里给大家提供一些平时经常容易用到的效果的解决方案。我把一些效果封装在了一个类库文件中。

警告窗口

/// <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

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:632712次
    • 积分:7159
    • 等级:
    • 排名:第3140名
    • 原创:32篇
    • 转载:265篇
    • 译文:0篇
    • 评论:90条
    最新评论