知识大全 让ASP.NET简便使用SCRIPT
Posted 知
篇首语:精诚所加,金石为开。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 让ASP.NET简便使用SCRIPT相关的知识,希望对你有一定的参考价值。
让ASP.NET简便使用SCRIPT 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
在开发应用程序过程中编写Script是件很烦人的事情 其实我们可以把常用的Script装成相应的 NET组件在服务端调用 这样可以大大简化Script的编写还提高的Script的重用
以下是常用的打开模式窗体并获取返回值的类调用 实际上可以给设置多个参数传入和不同控件获取不同返回值的结果.
定义打开窗体并设置返回值脚本类 HFSoft Web Scripts ShowModalDialog dialog=new HFSoft Web Scripts ShowModalDialog( XXX Units Config WebBoot+ Appunit/WindowOpenDialog aspx FrmFailureLogSearch PageURI()); dialog Height= ; dialog Width= ; dialog ReturnElements Add(new HFSoft Web Scripts ReturnElement(this txtReturn ClientID ReturnString )); HFSoft Web Scripts ReGISterScript RegiOnClick(cmdSearch dialog); 打开窗体设置返回值的代码 HFSoft Web Scripts ReturnValues returnValue=new HFSoft Web Scripts ReturnValues(); returnValue Add( ReturnString filter); HFSoft Web Scripts RegisterScript RegiPageClient(this return returnValue); 打开窗体类的代码(其实很多Script都可以通过这样的方式来封装). namespace HFSoft Web Scripts /// <summary> /// 创建打开窗体脚本类 /// 注意:返回值参数据接收的数据格式必须 /// key=value|key =value | /// </summary> public class ShowModalDialog : IExecuteScript private const string _Dialog = window showModalDialog( dialogHeight : px ; dialogWidth : px ; edge : Raised ; center : Yes ; help : No ; resizable : No ; status : No ; scroll : Yes ; ); ; #region IExecuteScript 成员 private bool mParent = false ; /// <summary> /// 是否需要加载父指向 /// </summary> public bool Parent get // TODO: 添加 SetElementsValue Parent getter 实现 return mParent ; set // TODO: 添加 SetElementsValue Parent setter 实现 mParent = value ; private string GetParent () if ( Parent ) return parent ; return ; /// <summary> /// 构造对象 /// </summary> /// <param name= pageContainer >容器页</param> /// <param name= openPage >具本打开的页面</param> public ShowModalDialog ( string pageContainer string openPage ) PageContainer = pageContainer ; OpenPage = openPage ; public const string PageUrlTag = pageurl ; /// <summary> /// 生成脚本 /// </summary> /// <returns>string</returns> public string Execute () // TODO: 添加 ShowModalDialog Execute 实现 string url = + PageContainer + ? pageurl = + + GetPage (); url = string Format ( _Dialog url Height Width ); url = GetParent () + url ; if ( ReturnElements Count > ) url = var getvalue= + url + ;if(getvalue != null) ; foreach ( ReturnElement item in ReturnElements ) url += item GetScript ( GetParent ());
url += ; return url + ; ; return url + ; ; #endregion private string mPageContainer ; /// <summary> /// 获取或设置容器页(包含路径) /// </summary> public string PageContainer get return mPageContainer ; set mPageContainer = value ; private string mOpenPage ; /// <summary> /// 打开的页(包含路径) /// </summary> public string OpenPage get return mOpenPage ; set mOpenPage = value ; private int mHeight = ; /// <summary> /// 获取或设置打开窗体的高度 /// </summary> public int Height get return mHeight ; set mHeight = value ; private int mWidth = ; /// <summary> /// 获取或设置打开窗体的宽度 /// </summary> public int Width get return mWidth ; set
mWidth = value ; private ReturnElementCollections mReturnElements = new ReturnElementCollections (); /// <summary> /// 获取返回值元素集 /// </summary> public ReturnElementCollections ReturnElements get return mReturnElements ; private ParameterCollection mParameters = new ParameterCollection (); /// <summary> /// 获取打开页面的参数集 /// </summary> public ParameterCollection Parameters get return mParameters ; private string GetPage () if ( Parameters Count == ) return +OpenPage+ ; System Text StringBuilder sb = new System Text StringBuilder (); sb Append ( +OpenPage+ ); string param = ; string parent = GetParent (); for ( int i = ; i < Parameters Count ; i ++) if ( Parameters [ i ] Element == ElementType Element ) param = + Parameters[i] Name + = + + parent + document all( +Parameters[i] Value + ) value ; else if ( Parameters [ i ] Element == ElementType Select ) param = + Parameters[i] Name + = + + parent + __getSeletedButton( + parent + document all( +Parameters[i] Value + )) ; if ( i == ) sb Append ( + +System Web HttpUtility UrlEncode( ? ) + + + param ); else sb Append ( + +System Web HttpUtility UrlEncode( & ) + + + param ); return sb ToString (); #region subClass public enum ElementType None Element Select
/// <summary> /// 参数描述类 /// </summary> public class Parameter /// <summary> /// 构造参数对象 /// </summary> public Parameter () /// <summary> /// 构造指定名称和值的参数对象 /// </summary> /// <param name= name >参数名称</param> /// <param name= value >参数值</param> public Parameter ( string name string value ) Name = name ; Value = value ; /// <summary> /// 构造指定名称和值的参数对象 /// </summary> /// <param name= name >参数名称</param> /// <param name= value >参数值</param> /// <param name= iselement >值是否元素名称</param> public Parameter ( string name string value ElementType element ) Name = name ; Value = value ; Element = element ; private string mName ; /// <summary> /// 获取或设置参数名称 /// </summary> public string Name get return mName ; set mName = value ; private string mValue ; /// <summary> /// 获取或设置参数值 /// </summary> public string Value get return mValue ; set mValue = value ;
private ElementType mElement = ElementType None ; /// <summary> /// 获取或设置参数值是否参数名称 /// </summary> public ElementType Element get return mElement ; set mElement = value ; public class ParameterCollection : System Collections CollectionBase public Parameter this [ int index ] get return ( ( Parameter ) List [ index ] ); set List [ index ] = value ; public int Add ( Parameter value ) return ( List Add ( value ) ); public int IndexOf ( Parameter value ) return ( List IndexOf ( value ) ); public void Insert ( int index Parameter value ) List Insert ( index value ); public void Remove ( Parameter value ) List Remove ( value ); public bool Contains ( Parameter value ) // If value is not of type Int this will return false return ( List Contains ( value ) ); /// <summary>
/// 返回值接收元素描述类 /// </summary> public class ReturnElement /// <summary> /// 构造对象 /// </summary> /// <param name= id >接收值的元素ID</param> /// <param name= key >对应值的键值</param> public ReturnElement ( string id string key ) ID = id ; Key = key ; private string mID ; /// <summary> /// 获取或设置元素ID /// </summary> public string ID get return mID ; set mID = value ; private string mKey ; /// <summary> /// 获取或设置对应值的键值 /// </summary> public string Key get return mKey ; set mKey = value ; /// <summary> /// 获取操作脚本 /// </summary> /// <returns>string</returns> public string GetScript ( string parent ) return parent + document all( +ID + ) value= + parent + __AnalyseString( +Key + getvalue); ; public class ReturnElementCollections : System Collections CollectionBase public ReturnElement this [ int index ] get return ( ( ReturnElement ) List [ index ] );
cha138/Article/program/net/201311/12329相关参考
知识大全 让UserControl 成为 Asp.Net ajax
让UserControl成为Asp.Netajax 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
ASP.NET让网页弹出窗口不再困难 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 由于项目要用
知识大全 让UserControl 成为Asp.Net ajax 控件
让UserControl成为Asp.Netajax控件 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧
ASP.NET揭秘ASP.NET页面的结构 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!TheSt
ASP.NET底层架构探索之进入ASP.NET 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! A
ASP.NET开发宝典:ASP.NET简介 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 第章搭
知识大全 IIS处理Asp.net请求和 Asp.net页面生命周期
IIS处理Asp.net请求和Asp.net页面生命周期 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下
知识大全 如何由ASP.NET 1.1移植到ASP.NET 2.0
如何由ASP.NET1.1移植到ASP.NET2.0 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
ASP.NET开发宝典:创建ASP.NET网站 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! &
ASP.NET开发宝典:运行ASP.NET网站 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! &