ASP.NET基于Ajax的Enter鍵提交問題分析
本文實(shí)例講述了ASP.NET基于Ajax的Enter鍵提交。分享給大家供大家參考,具體如下:
近日遇到一個(gè)Enter鍵的問題,總結(jié)下:
1. 首先復(fù)習(xí)下html form對(duì)Enter的響應(yīng),不同的瀏覽器對(duì)Enter的處理略有不同,這里采用IE7
A. html form只有一個(gè)TextBox, 沒有submit按鈕, 點(diǎn)Enter 提交form.
B. >1個(gè)TextBox, 沒有submit按鈕, 點(diǎn)Enter ,form沒有響應(yīng)。
C. 頁面有一個(gè)(或多個(gè))submit按鈕, 點(diǎn)Enter, 觸發(fā)第一個(gè)submit 按鈕click。
2. ASP.NET 中的Enter鍵
ASP.NET 2.0在form上提供了defaultbutton屬性。
3. Master page下的defaultbutton.
在page中Page_Load中設(shè)置
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的實(shí)現(xiàn)。
A. ASP.NET的defaultbutton的實(shí)現(xiàn)。
在html中添加WebForm_FireDefaultButton方法。
WebForm_FireDefaultButton的實(shí)現(xiàn):
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 不會(huì)更新回false,造成default button失效。
C. 解決辦法
不一而同,自己設(shè)置
希望本文所述對(duì)大家asp.net序設(shè)計(jì)有所幫助。
- asp.net+ajax簡(jiǎn)單分頁實(shí)例分析
- ASP.NET搭配Ajax實(shí)現(xiàn)搜索提示功能
- ASP.NET與Ajax的實(shí)現(xiàn)方式小總結(jié)
- Ajax+asp.net實(shí)現(xiàn)用戶登陸
- asp.net+ajax的Post請(qǐng)求實(shí)例
- asp.net使用AJAX實(shí)現(xiàn)無刷新分頁
- asp.net+ajax+sqlserver自動(dòng)補(bǔ)全功能實(shí)現(xiàn)解析
- jquery.Ajax()方法調(diào)用Asp.Net后臺(tái)的方法解析
- asp.net中利用Jquery+Ajax+Json實(shí)現(xiàn)無刷新分頁的實(shí)例代碼
- Asp.net ajax實(shí)現(xiàn)任務(wù)提示頁面的簡(jiǎn)單代碼
- ASP.NET中TextBox使用Ajax控件顯示日期不全的問題解決方法
- ASP.NET中使用Ajax的方法
- 輕量級(jí)asp.net ajax解決方案詳解
相關(guān)文章
使用本機(jī)IIS?Express開發(fā)Asp.Net?Core應(yīng)用圖文教程
IIS Express是一個(gè)Mini版的IIS,能夠支持所有的Web開發(fā)任務(wù),本篇經(jīng)驗(yàn)將和大家介紹使用自定義主機(jī)名來訪問運(yùn)行在IIS?Express上的站點(diǎn)程序的方法,希望對(duì)大家的工作和學(xué)習(xí)有所幫助2023-06-06詳解VS2017 Linux 上.NET Core調(diào)試
這篇文章主要介紹了詳解VS2017 Linux 上.NET Core調(diào)試,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-04-04ASP.NET 圖片防盜鏈的實(shí)現(xiàn)原理分析
防盜鏈的原理,從圖片請(qǐng)求的URL地址上判斷是否是我們自己網(wǎng)站上的域名,如果不是,恭喜,你的圖片已經(jīng)被盜鏈了!2010-01-01深入Lumisoft.NET組件開發(fā)碰到亂碼等問題的解決方法
本篇文章介紹了,在Lumisoft.NET組件開發(fā)中碰到亂碼等一些問題的解決方法。需要的朋友參考下2013-05-05asp.net中一次性動(dòng)態(tài)綁定多個(gè)droplistdown
asp.net中一次性動(dòng)態(tài)綁定多個(gè)droplistdown的實(shí)現(xiàn)代碼,需要的朋友可以參考下。2011-10-10WPF實(shí)現(xiàn)文本描邊+外發(fā)光效果的示例代碼
這篇文章主要介紹了如何利用WPF實(shí)現(xiàn)文本描邊以及外發(fā)光的效果,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)有一定幫助,需要的可以參考一下2022-03-03ASP.NET 2.0 程序安全的基礎(chǔ)知識(shí)
成員關(guān)系的概念在人類社會(huì)中是一個(gè)層次比較低的概念,源于希望屬于某個(gè)群組的意識(shí)。同樣,在ASP.NET 2.0程序開始開發(fā)涉及到成員關(guān)系的應(yīng)用程序時(shí),必須首先理解身份、驗(yàn)證和授權(quán)這幾個(gè)關(guān)鍵的概念。2010-04-04xpath的數(shù)據(jù)和節(jié)點(diǎn)類型以及XPath中節(jié)點(diǎn)匹配的基本方法
xpath的數(shù)據(jù)和節(jié)點(diǎn)類型以及XPath中節(jié)點(diǎn)匹配的基本方法,學(xué)習(xí)xpath的朋友可以參考下。2010-09-09