分享来自zoomla!逐浪CMS的三个ASP.NET实用技巧

分享来自zoomla!逐浪CMS的三个ASP.NET实用技巧

 

在服务器端控件中添加客户端属性
  我们有时会向服务器端控件中添加一些特殊的属性,这类属性不需要服务器端的处理,只需简单的发送至客户端即可,我们不妨称其为客户端属性,例如HTML属性或自定义属性(可能用于实现某种特定的JavaScript功能)。可以通过以下几种方法达到这个目的:
  a.直接向控件添加客户端属性
  其中的onmouseover是客户端属性,注意,编译器是允许这种写法的,但会显示警告。
  b.调用内置方法
  可以通过调用WebControl.Attributes.Add()方法为控件添加客户端属性,如下所示:
MyButton.Attributes.Add("onmouseover", "this.style.cursor='pointer'");
  这也是最常用的方法。
  c.创建自定义控件
  如果某个类型的服务器端控件中经常需要添加客户端属性,则可以考虑创建一个继承自该服务器端控件的自定义控件,其中包含特定的客户端属性。
  正是考虑到这一点,ASP.NET 2.0中为按钮控件(包括Button、LinkButton、ImageButton控件)提供了OnClientClick属性,可以这样写:
MyButton.OnClientClick = "alert('Hello!')";
  真是贴心的功能!

 

跟踪页面执行  

设置断点是页面调试过程中的常用手段,除此之外,还可以通过查看页面的跟踪信息进行错误排查以及性能优化。ASP.NET中启用页面跟踪非常方便,只需在Page指令中加入Trace="True"属性即可:
<%@ Page Language="C#" Trace="true">

  跟踪信息可以分为两类:
  a.页面执行详细情况
  其中主要包括页面生命周期中各事件列表、控件树列表(可以查看每个控件的HTML字节数以及ViewState字节数)、Session状态、Application状态、Cookie集合、QueryString集合、服务器变量等信息。
  b.自定义跟踪信息
  通过在页面代码中调用Trace.Write()或Trace.Warn()方法便可将指定内容写入跟踪信息中的"TraceInformation"节。就算页面发生了错误,跟踪信息还是会显示出来,并且在发布应用程序时无需删除相关的跟踪代码,只需从Page指令中移除Trace属性即可。

 

表单数据的服务器端验证
  将数据验证任务从服务器端迁移到客户端的过程促使了JavaScript的产生,这也是我们沿用至今的一种方式。但只有在保证客户端JavaScript正常运行的前提下,这种方式才能发挥其作用。不幸的是,总有一些例外,比如浏览器不支持JavaScript,或者用户刻意关闭了浏览器的JavaScript功能,这就导致了第一重防护失效。比较保险的做法是加入第二重防护,即对用户提交的数据进行服务器端验证,但这无疑将增加开发者的工作量。
  ASP.NET 2.0提供了一系列表单数据验证控件,可以非常轻松的完成客户端及服务器端的双重数据验证任务。但要使服务器端验证功能发挥作用,还需要用到Page.IsValid属性,请看下面的例子:
  姓名: ator ID="RequiredFieldValidator1" ControlToValidate="txtName" ErrorMessage="请填写姓名!" Display="Dynamic" runat="server">
  这是一个HTML片段,其中有一个RequiredFieldValidator控件用于检查是否已填写姓名。下面是点击按钮时执行的服务器端代码:
  protected void btnSubmit_Click(object sender, EventArgs e){if(Page.IsValid) //注意:不要遗漏对Page.IsValid属性的判断{Response.Write("你的名字是:" +txtName.Text);}}
  其中,要特别注意对Page.IsValid属性的判断,只有页面中所有验证控件对数据的验证都成功时,Page.IsValid属性才为True,这代表提交的数据为有效数据,可以进入下一步操作。

更多精彩内容请阅读:zoomla!逐浪CMS

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在使用script标签引入Vue.js时,你可以按照以下步骤编写Vue组件: 1. 首先,在你的HTML文件中引入Vue.js的script标签。你可以使用以下代码引入Vue.js库: ```html <script src="https://unpkg.com/vue/dist/vue.js"></script> ``` 2. 在页面中定义一个按钮或其他需要使用Vue组件的元素。例如,你可以添加以下代码来创建一个按钮: ```html <button id="my-button">Click me</button> ``` 3. 接下来,我们需要定义Vue组件。你可以在script标签中编写Vue组件的代码。例如,以下代码定义了一个简单的Vue组件: ```html <script> // 在这里定义Vue组件 Vue.component('my-component', { template: '<div>This is my Vue component</div>' }); </script> ``` 4. 然后,我们需要在父页面中使用该组件。在Vue的实例中,将该组件作为子组件进行注册。在页面中,你需要添加一个具有id为"app"的div元素,作为Vue实例的挂载点。例如: ```html <div id="app"> <!-- 在这里使用Vue组件 --> <my-component></my-component> </div> ``` 5. 最后,在script标签中实例化Vue,并将Vue实例与页面中的挂载点关联起来。例如,你可以使用以下代码创建Vue实例: ```html <script> new Vue({ el: '#app' }); </script> ``` 通过以上步骤,你可以使用script标签引入Vue.js,并编写简单的Vue组件来与现有的jQuery项目一起使用,实现功能的展示,并确保Vue和jQuery之间不会发生冲突。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [Vue.js 基本知识——基于script标签引入](https://blog.csdn.net/laoyaotask/article/details/94366082)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* *3* [script标签引入vue方式开发如何写组件](https://blog.csdn.net/zoomla_CMS/article/details/106008366)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值