在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
描述:asp.net中服务器控件Button的点击事件OnClientClick和OnClick的区别? 解答:http://www.cnblogs.com/ypfnet/archive/2012/12/24/2830771.html(作者:代号小子) 一、 二者的区别: OnClick是button的服务器端事件 OnClientClick是button属性,它里面执行的是js代码,是在客户端运行。 一般我们用 OnClientClick验证我们的提交数据,但是这个一定要返回ture或者false,即一定要加上return,否则在客户端验证失效。如果是true那么就会执行后台的c#代码,页面也会进行提交刷新;否则就不执行,只会执行客户端js代码。 前台代码: 1 <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="test.WebForm1" %> 2 3 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 4 5 <html xmlns="http://www.w3.org/1999/xhtml"> 6 <head runat="server"> 7 <title></title> 8 <script type="text/javascript"> 9 function clickBtn() { 10 // alert("被点击了!"); 11 // return false; 12 13 var yesORNo = confirm("确定点击?"); 14 if (yesORNo) { 15 return true;//如果用户点击“确定”,就返回true,开始执行后台代码! 16 } else { 17 return false; //如果用户点击“取消”,就返回false,不执行后台代码! 18 } 19 } 20 </script> 21 </head> 22 <body> 23 <form id="form1" runat="server"> 24 <div> 25 <asp:Button runat="server" ID="btnok" Text="点击" onclick="btnok_Click" OnClientClick="return clickBtn()"/><%--方法1:在控件中添加js代码--%> 26 <asp:Button runat="server" ID="btnok2" Text="点击2" onclick="btnok_Click" OnClientClick="return confirm('确定?')"/><%--方法2:在控件中添加js代码--%> 27 </div> 28 </form> 29 </body> 30 </html>
后台代码: 1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Web; 5 using System.Web.UI; 6 using System.Web.UI.WebControls; 7 8 namespace test 9 { 10 public partial class WebForm1 : System.Web.UI.Page 11 { 12 protected void Page_Load(object sender, EventArgs e) 13 { 14 15 } 16 protected void btnok_Click(object sender, EventArgs e) 17 { 18 Response.Write("这里是后台,按钮被点击了"); 19 } 20 } 21 } 二、服务器控件调用js代码 做网页经常要和JavaScript打交道,经常要用JavaScript做一些客户端的验证,但是如果我们的按钮用的是HTML控件的话,验证通过后无法调用后台代码,如果用服务器端控件,验证不通过有要刷新页面,这个有时候挺烦人的,能不能让服务器端的按钮调用客户端的验证,如果验证成功后在调用服务器端的方法,这样既减少了网路传输,给用户感觉也好。
|
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论