ASPNET按钮只执行客户端代码不回送页面实现思路

asp.net的Button默认行为是将页面回送后执行服务器代码。在页面中还可以使用html的按钮控件input type="button",但是这种HTML控件在cs文件中引用不到。

asp:Button在cs文件中可用,如何使它只执行客户端JavaScript代码而不回送执行服务器端代码呢?

首先介绍asp:Button的两个事件OnClientClick和OnClick,前者OnClientClick是执行客户端JavaScript代码,后者OnClick是服务器代码,先执行postback,再在服务器运行。OnClientClick要先于OnClick,如果asp:Button里没有OnClick,点击时会照样回送。

当OnClientClick返回false时,OnClick就不会执行了。这样在OnClientClick可以执行一个Ajax异步操作。


代码如下:

<asp:Button ID="btnSave" runat="server" Text="Save" OnClientClick="AjaxDoSave(); return false;" />

这样这个Button就变成了客户端的input了,但在cs文件中还能引用到。

(0)

相关推荐

  • ASPNET按钮只执行客户端代码不回送页面实现思路

    asp.net的Button默认行为是将页面回送后执行服务器代码.在页面中还可以使用html的按钮控件input type="button",但是这种HTML控件在cs文件中引用不到. asp:Button在cs文件中可用,如何使它只执行客户端JavaScript代码而不回送执行服务器端代码呢? 首先介绍asp:Button的两个事件OnClientClick和OnClick,前者OnClientClick是执行客户端JavaScript代码,后者OnClick是服务器代码,先执行po

  • Python借助with语句实现代码段只执行有限次

    debug的时候,有时希望打印某些东西,但是如果代码段刚好在一个循环或者是其他会被执行很多次的部分,那么用来print的语句也会被执行很多次,看起来就不美观. 例如: a = 0 for i in range(3):     a += 1 print(a) 这里在中间希望确认一下a的类型,debug的时候改成: a = 0 for i in range(3):     print(type(a))     a += 1 print(a) ''' 打印结果: <class 'int'> <

  • asp.net下模态对话框关闭之后继续执行服务器端代码的问题

    最近做一个从Access项目向 Asp.net + SqlServer迁移工作,其中遇到了这种情况,在Access窗体的一个按钮事件中,代码大体上是这么个功能:弹出模态对话框,在关闭对话框之后继续走一段数据库操作代码. 在Asp.net里弹出模态对话框容易,但是在模态对话框关闭之后还要继续执行服务器代码,这就要求当对话框关闭之后页面要立即提交.于是有了以下的解决方法. 在Web Form中拖入服务器端按钮,并假设此按钮ID为 btnComput,在隐藏页面的 Page_Load 中用代码中这样写

  • Openssl实现双向认证教程(附服务端客户端代码)

    一.背景说明 1.1 面临问题 最近一份产品检测报告建议使用基于pki的认证方式,由于产品已实现https,商量之下认为其意思是使用双向认证以处理中间人形式攻击. <信息安全工程>中接触过双向认证,但有两个问题. 第一个是当时最终的课程设计客户端是浏览器,服务端是tomcat双向认证只需要对两者进行配置并不需要自己真的实现代码. 第二个是虽然课程也有接近双向认证的实现代码,但当时是Java+JCE环境现在要用C+++OpenSSL环境,总体意思确实还是差不多但具体函数和参数差别还是不少. 所以

  • 使用cmd根据WSDL网址生成java客户端代码的实现

    windows下使用cmd命令提示符生成java webservice客户端代码,可以使用命令提示符直接生成客户端代码,直接导入到项目中,只需配置jdk即可,在jdk的bin文件夹下,按Shift并点击右键,选中"在此处打开命令窗口" 输入命令如下: wsimport -keep -p com.demo.client -d D:\\(存放的地址) http://XX/Account?wsdl(wsdl地址) 命令参数说明: -d:生成客户端执行类的class文件的存放目录(默认存放在C

  • js只执行1次的函数示例

    在我们日常开发的时候,经常会碰到一种这样的情况:想让某个函数只执行一次,特别是在一些循环或定时执行的时候. 废话不多说,直接上代码: function runOnce(fn, context) { //控制让函数只触发一次 return function () { try { fn.apply(context || this, arguments); } catch (e) { console.error(e);//一般可以注释掉这行 } finally { fn = null; } } } /

  • 解决vue项目中type=”file“ change事件只执行一次的问题

    问题描述 在最近的项目开发中遇到了这样的一个问题,当我上传了一个文件时,我将获取到的文件名清空后,却无法再次上传相同的文件 <template> <div class="hello"> <input type="button" value="上传文件" name="" id="" @click="updata"> <input type=&quo

  • 原生JS实现DOM加载完成马上执行JS代码的方法

    用原生JS我们经常使用window.onload事件来加载页面.但是window.onload是在页面元素都加载完毕后才执行,如果页面内有大的图片的话,会在页面展现后好久时间后才执行.所以有时我们需要在DOM载入时马上执行一些函数.jQuery提供了document.ready方法用来代替window.onload.但又不愿意仅为了这一个需求而引入整个JQuery库,于是就把jQuery的方法提取出来,单独使用了. 如果只需要对DOM进行操作,那么这时就没必要等到页面全部加载了.Firefox有

  • python scrapy重复执行实现代码详解

    这篇文章主要介绍了python scrapy重复执行实现代码详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架,我们只需要实现少量的代码,就能够快速的抓取 Scrapy模块: 1.scheduler:用来存放url队列 2.downloader:发送请求 3.spiders:提取数据和url 4.itemPipeline:数据保存 from twisted.internet i

  • js实现点赞按钮功能的实例代码

    js实现点赞按钮功能,包括只能点赞一次,超过一次时提示文字(3秒后消失),点击时次数加一(给后端传值在这里解决). 没有按钮加图片,只用了改变颜色来表示 首先明确html页面代码 <span id="tixing0" ></span> <div class="dianzan_11"> <div class="dianzan_font"> <center><span id="

随机推荐