ajax 提交 .net ispostback不执行,ASP.NET基于Ajax的Enter键提交问题分析
本文实例讲述了ASP.NET基于Ajax的Enter键提交。分享给大家供大家参考,具体如下:
近日遇到一个Enter键的问题,总结下:
1. 首先复习下html form对Enter的响应,不同的浏览器对Enter的处理略有不同,这里采用IE7
A. html form只有一个TextBox, 没有submit按钮, 点Enter 提交form.
B. >1个TextBox, 没有submit按钮, 点Enter ,form没有响应。
C. 页面有一个(或多个)submit按钮, 点Enter, 触发第一个submit 按钮click。
2. ASP.NET 中的Enter键
ASP.NET 2.0在form上提供了defaultbutton属性。
3. Master page下的defaultbutton.
在page中Page_Load中设置
protected void Page_Load(object sender, EventArgs e)
{
if (!this.Page.IsPostBack)
{
this.Page.Master.Page.Form.DefaultButton = this.BtnSave.UniqueID;
4. Ajax下的defaultbutton
Ajax的局部刷新破坏了defaultbutton的实现。
A. ASP.NET的defaultbutton的实现。
在html中添加WebForm_FireDefaultButton方法。
WebForm_FireDefaultButton的实现:
var __defaultFired = false;
function WebForm_FireDefaultButton(event, target) {
if (!__defaultFired && event.keyCode == 13 && !(event.srcElement && (event.srcElement.tagName.toLowerCase() == "textarea"))) {
var defaultButton;
if (__nonMSDOMBrowser) {
defaultButton = document.getElementById(target);
}
else {
defaultButton = document.all[target];
}
if (defaultButton && typeof(defaultButton.click) != "undefined") {
__defaultFired = true;
defaultButton.click();
event.cancelBubble = true;
if (event.stopPropagation) event.stopPropagation();
return false;
}
}
return true;
}
B. 问题是Ajax中js变量 __defaultFired 不会更新回false,造成default button失效。
C. 解决办法
不一而同,自己设置
__defaultFired=false;
希望本文所述对大家asp.net序设计有所帮助。
ajax 提交 .net ispostback不执行,ASP.NET基于Ajax的Enter键提交问题分析相关推荐
- datetime 索引_【免费毕设】ASP.NET基于Ajax+Lucene构建搜索引擎的设计和实现(源代码+论文)...
点击上方"蓝字"关注我们目录 系统设计 4.1 搜索引擎模型 模型包括爬虫.索引生成.查询以及系统配置部分.爬虫包括:网页抓取模块.网页减肥模块.爬虫维持模块.索引生成包括:基于文 ...
- ajax原生为什么else会执行2次,关于Ajax,明明传过去的值是1,可不知道为什么就是else起作用?...
login.js var xmlhttp; //定义XMLHttpRequest对象 function createXmlHttpRequestObject() { //如果在internet Exp ...
- ASP.net 基于Ajax 站内短信即时查询的思路
站内短信收发方面没有什么可说的,关键是在用Ajax做即时查询的时候碰到了些问题,昨晚终于解决了!同时测试通过! 在数据库设计上面,基本上要设计三个表, 1.短信发送 2.短信收取 3.状态表 整个数据 ...
- 谈谈Enter回车键提交表单那些事
我们在做系统前端的时候,往往会用到form标签,采用jquery插件做表单验证.我们信誓旦旦的一位把一切都做好的时候,并且检查一遍又一遍的时候,意向不到的事情发生了,也许是出于一种意外,而这种意 ...
- 基于ajax毕业设计题目50例
基于ajax毕业设计题目1-10题 1.基于AJAX的Web应用构件组装技术及工具 2.基于AJAX技术对Web考试系统性能改进研究与实现 3.基于AJAX技术协作知识建构学习平台的研究与设计 4.基 ...
- 在IE9浏览器下面按enter键会提交两次
在一个页面有两个.keydown方法.在IE9浏览器会出现按enter键提交两次方法, 但是如果在提交的方法后面加上return false; 就不会提交两次了.
- layui表单提交使用form.on(‘submit(sub)‘,function (){}) 使用ajax请求时回调不执行的原因及解决方法
layui表单提交使用form.on('submit(sub)',function (){}) 使用ajax请求时回调不执行的原因及解决方法 参考文章: (1)layui表单提交使用form.on(' ...
- ajax回调函数提交表单,MVC3中ajax提交表单无法执行success回调函数,怎么办?
js代码 function AjaxInitForm(formId, btnId, isDialog, urlId){ var formObj = $('#' + formId); var btnOb ...
- asp.net jquery.Ajax() 方法调用后台方法
利用JQuery的$.ajax()可以很方便的调用asp.net的后台方法. 先来个简单的实例热热身吧. 1.无参数的方法调用 asp.net code: view plaincopy to clip ...
最新文章
- 苏宁宣布二度涨薪!平均涨幅31%,最高涨幅高达150%!网友:羡慕哭了!苏宁员工:不是全员,跟社招无关!...
- Android开发之高德地图定位成功返回的定位信息
- android studio开启multiDexEnabled后依然出现超出方法数的问题
- Python学习---Python的框架基础学习
- cmake 指定平台编译arm64_Arm V7 V8处理器编译Target小提示
- 台式计算机cpu允许温度,台式机cpu温度多少正常 台式机cpu正常温度
- Nacos @RefreshScope 配置不生效问题
- 赋值运算和赋值表达式
- HTML5 之 Form 标签
- 数据分析 - 单表简单查询
- Windows终端工具——Hyper使用及配置
- 2020年茶艺师(中级)多少分及格及茶艺师(中级)考试APP
- 我的世界java边境之地_我的世界:前往边境之地的9个“诡异”现象!阳光也会被吞噬?...
- js作为websocket client,服务用java 点对点、一对多聊天
- 【数据结构】二叉树的非递归遍历
- Android安卓应用程序窗口化
- 赵丽颖、冯绍峰的官宣炸了微博的高并发系统!
- 蚂蚁金服总裁胡晓明:科技如何驱动金融从离线走向在线
- 常用字体的unicode表示
- Aigtek—浅谈线束测试仪的重要性