C#学习之按钮点击事件

描述: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="点击" οnclick="btnok_Click" OnClientClick="return clickBtn()"/><%--方法1:在控件中添加js代码--%>
26     <asp:Button runat="server" ID="btnok2" Text="点击2" οnclick="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 test9 {
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控件的话,验证通过后无法调用后台代码,如果用服务器端控件,验证不通过有要刷新页面,这个有时候挺烦人的,能不能让服务器端的按钮调用客户端的验证,如果验证成功后在调用服务器端的方法,这样既减少了网路传输,给用户感觉也好。 
当我们用模板列做删除数据的时候一般都会返回一个对话框询问用户是否确认,其实我们是通过修改模板列里的button的OnClientClick属性将其值设为 return confirm("你确认删除该条记录吗"); 我们可以分析一下,confirm返回的是个bool值,如果我的button返回的结果也是个bool应该也可以吧,我猜对了,比如有下面一些代码 :


function judgeUserInput() 

bool result = true; 
if(验证未通过) 

result = false; 
alert("请检查您的输入是否正确"); 

return result; 

转载于:https://www.cnblogs.com/lishidefengchen/p/3421168.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/432989.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Scrum之 评审会议

在sprint周期最后&#xff0c;需要进行一次评审会议&#xff0c;让团队向产品负责人和利益相关者展示已完成的功能。sprint审核的大部分实践用于团队成员展示功能、回答利益相关者对展示的疑问并记录所期望的更改。评审会议可以吸引相关利益者的关注&#xff0c;让其他人了解团…

Bringing up interface eth0: Device eth0 does not seem to be presen

故障现象&#xff1a;51Testing软件测试网.M|{,lbr 51Testing软件测试网l]9H/f[w)h service network restart51Testing软件测试网l^i2t?|5zT8J-s Shutting down loopback insterface: [ OK ]51Testing软…

java的未检查异常有哪些_Java:检查异常与未检查异常

一、异常的介绍Throwable 是 Java 中所有错误和异常的超类。Java 虚拟机仅抛出属于此类(或其子类之一)的实例对象&#xff0c;或者是 throw 语句也可以抛出该对象。同样&#xff0c;catch 子句中的参数类型也只能是此类(或其子类之一)。处于编译时检查异常为目的&#xff0c;Th…

warning:deprecated conversion from string constant to 'char *'解决方案

Linux 环境下当GCC版本比较高时&#xff0c;编译代码可能出现的问题 问题是这样产生的&#xff0c;先看这个函数原型&#xff1a; void someFunc(char *someStr); 再看这个函数调用&#xff1a; someFunc("Im a string!"); 把这两个东西组合起来&#xff0c;用最新的…

利用SVN工具下载OpenCore代码

OpenCore原来使用的是CVS管理代码的。从09年起&#xff0c;更换用SVN管理代码&#xff0c;大家可以用TortoiseSVN软件下载代码&#xff0c;网址是&#xff1a;http://tortoisesvn.net/&#xff0c;安装后tortoiseSVN会和window的资源管理器右键菜单紧密结合在一起&#xff0c;使…

java array_Java 数组

Java 数组数组对于每一门编辑应语言来说都是重要的数据结构之一&#xff0c;当然不同语言对数组的实现及处理也不尽相同。Java语言中提供的数组是用来存储固定大小的同类型元素。你可以声明一个数组变量&#xff0c;如numbers[100]来代替直接声明100个独立变量number0&#xff…

idea 执行 java jar_idea打包java可执行jar包的实现步骤

1,在项目上鼠标右键 --> Open Module Settings2, Artifacts --> --> JAR --> From modules with dependencies...3, Main Class是你这个项目(脚本)的主方法,就是要运行的类,选一个4,如下图,设置 META-INF/MANIFEST.MF!!!!!切记,不能用默认的(起码我用默认的是不成…

约法三章

与自己约法三章如下&#xff1a; 1. 禁止发表悲观的言论&#xff0c;你是阳光的。哪怕翅羽沉重&#xff0c;依旧头颅高昂。 2. 专注&#xff0c;专注才能让你更有魅力。最近老不能集中注意力。 3. 做好自己。不管怎么样&#xff0c;你都有人在你背后关怀你支持着你&a…

raspberry pi 家族

项目 A型 B型 B型 2代B型 SoC(系统级芯片) Broadcom BCM2835&#xff08;CPU&#xff0c;GPU DSP和SDRAM&#xff09; Broadcom BCM2836 CPU ARM1176JZF-S核心(ARM11系列)700MHz 单核 ARM Cortex-A7 900MHz 4核 GPU(图形处理器) Broadcom VideoCore IV, OpenGL ES 2.0, 1080p 3…

js和jQuery 获取屏幕高度、宽度

js获取屏幕高度&#xff0c;宽带 网页可见区域宽&#xff1a;document.body.clientWidth网页可见区域高&#xff1a;document.body.clientHeight网页可见区域宽&#xff1a;document.body.offsetWidth (包括边线的宽)网页可见区域高&#xff1a;document.body.offsetHeight (包…

tomcat java php_为什么要用tomcat?

首先&#xff0c;tomcat是开源的&#xff0c;基于java语言开发的&#xff0c;部署web项目的容器。普通的html&#xff0c;浏览器可以直接搞定&#xff0c;可以不需要tomcat等部署&#xff0c;但是如servlet这些&#xff0c;浏览器没法直接将里面的内容解析出来吧。这些就需要一…

安装配置树莓派的最佳工具——NOOBS

本文由 极客范 - 开了光的喜羊羊 翻译自 Jason Fitzpatrick。欢迎加入极客翻译小组&#xff0c;同我们一道翻译与分享。转载请参见文章末尾处的要求。如果你想找一种最简单的方式启动你的树莓派&#xff0c;不用再左顾右盼啦&#xff01;树莓派基金会开发的 New Out Of Box Sof…

Fiddler的钩子hook导致电脑无法连上网络

今天&#xff0c;电脑怎么都无法连上网络&#xff0c;重启了几次电脑也不行&#xff0c;网络环境是没有问题的&#xff0c;后来同事告诉我&#xff0c;Fiddler有一个BUG&#xff0c;就是Fiddler获取钩子之后没有释放掉&#xff0c;必须启动Fiddler&#xff0c;再关闭Fiddler&am…

java 方法参数绑定_java在注解中绑定方法参数的解决方案

我们有这样子的需求&#xff0c;需要记录用户操作某个方法的信息并记录到日志里面&#xff0c;例如&#xff0c;用户在保存和更新任务的时候&#xff0c;我们需要记录下用户的ip&#xff0c;具体是保存还是更新&#xff0c;调用的是哪个方法&#xff0c;保存和更新的任务名称以…

玩转树莓派Raspberry Pi 篇一:入门篇

前言&#xff1a;之前发了一篇树莓派刷OpenWrt系统的晒单&#xff0c;得到众多网友的关注&#xff0c;小编要希望分享更多DIY树莓派的经验。我玩树莓派都是比较简单的DIY&#xff0c;也积累了一点经验&#xff0c;在此分享给大家&#xff0c;算是抛砖引玉&#xff0c;希望看到大…

服务器三大类

SMP、NUMA、MPP体系结构介绍从系统架构来看&#xff0c;目前的商用服务器大体可以分为三类&#xff0c;即对称多处理器结构 (SMP &#xff1a; Symmetric Multi-Processor) &#xff0c;非一致存储访问结构 (NUMA &#xff1a; Non-Uniform Memory Access) &#xff0c;以及海量…

java listeners_Java ActionListeners

我将用Java开发一个游戏,它将拥有许多听众(动作,键,鼠标等).我的问题是实现监听器的最佳方式.方法1&#xff1a;this.addActionListener(new ActionListener() {// Overide methods go here});方法2&#xff1a;创建一个新类(或多个类),它将实现ActionListener并具有不同Game C…

WINCE6补丁安装

补丁安装 1. SP1 2. R2 3. R3 4. 最新一年的12月31月补丁 补丁下载地址 https://msdn.microsoft.com/en-us/windowsembedded/dn205267

codeforces B. The Fibonacci Segment 解题报告

题目链接&#xff1a;http://codeforces.com/problemset/problem/365/B 题目意思&#xff1a;简单来说&#xff0c;就是要找出最长的斐波纳契长度。 解决的方法不难&#xff0c;但是要注意更新左区间和右区间的值&#xff0c;而且需要把当前求出的斐波纳契长度和之前求出的斐…

mysql 导致iis 假死_php使用MySql函数导致Apache(iis)崩溃的问题解决方案

这个问题是在Windows下配置PHP环境时发生的。具体的表现是php运行正常&#xff0c;但是只要一调用MySql的相关函数&#xff0c;Apache就会崩溃掉。环境配置方式&#xff1a;php以模块的方式运行在Apache下。自定义php.ini路径phpinfo()显示mysql库加载成功崩溃后在Windows的错误…