ajax 防止用戶反復(fù)提交的2種解決方案
更新時(shí)間:2013年07月28日 15:46:16 作者:
ajax 防止重復(fù)提交可以通過(guò)在服務(wù)器端加載方法或直接寫在頁(yè)面腳本里,具體實(shí)現(xiàn)如下,遇到重復(fù)提交情況的朋友可以參考下,希望對(duì)大家有所幫助
可在服務(wù)器端加載方法:
private void OnLoading()
{
System.Text.StringBuilder sb = new System.Text.StringBuilder();
sb.Append(" function pageLoad(){var manager = Sys.WebForms.PageRequestManager.getInstance(); ");
sb.Append(" manager.add_beginRequest(OnBeginRequest); manager.add_endRequest(OnEndRequest)} var lcPostbackElementID;");
sb.Append(" function OnBeginRequest(sender, args){ lcPostbackElementID = args.get_postBackElement().id.toLowerCase(); if (lcPostbackElementID === \"btnadwords\"){$get(\"btnAdWords\").disabled = true; $get(\"btnAdWords\").value='正在提交...';}} ");
sb.Append(" function OnEndRequest(sender, args){if (lcPostbackElementID === \"btnadwords\"){ $get(\"btnAdWords\").disabled = false; $get(\"btnAdWords\").value='確定';}} ");
ScriptManager.RegisterStartupScript(Page, Page.GetType(), "btnAdWords", sb.ToString(), true);
}
也可直接寫在頁(yè)面腳本里:
<script>
function pageLoad()
{
var manager = Sys.WebForms.PageRequestManager.getInstance();
manager.add_beginRequest(OnBeginRequest);
manager.add_endRequest(OnEndRequest)
}
var lcPostbackElementID;
function OnBeginRequest(sender, args)
{
lcPostbackElementID = args.get_postBackElement().id.toLowerCase();
if (lcPostbackElementID === 'btnadwords')
{
$get('btnAdWords').disabled = true;
$get('btnAdWords').value='正在提交...';
}
}
function OnEndRequest(sender, args)
{
if (lcPostbackElementID === \"btnadwords\")
{
$get('btnAdWords').disabled = false;
$get('btnAdWords').value='確定';
}
}
< /script>
更多內(nèi)容請(qǐng)參考:http://msdn.microsoft.com/zh-cn/magazine/cc163319.aspx
復(fù)制代碼 代碼如下:
private void OnLoading()
{
System.Text.StringBuilder sb = new System.Text.StringBuilder();
sb.Append(" function pageLoad(){var manager = Sys.WebForms.PageRequestManager.getInstance(); ");
sb.Append(" manager.add_beginRequest(OnBeginRequest); manager.add_endRequest(OnEndRequest)} var lcPostbackElementID;");
sb.Append(" function OnBeginRequest(sender, args){ lcPostbackElementID = args.get_postBackElement().id.toLowerCase(); if (lcPostbackElementID === \"btnadwords\"){$get(\"btnAdWords\").disabled = true; $get(\"btnAdWords\").value='正在提交...';}} ");
sb.Append(" function OnEndRequest(sender, args){if (lcPostbackElementID === \"btnadwords\"){ $get(\"btnAdWords\").disabled = false; $get(\"btnAdWords\").value='確定';}} ");
ScriptManager.RegisterStartupScript(Page, Page.GetType(), "btnAdWords", sb.ToString(), true);
}
也可直接寫在頁(yè)面腳本里:
復(fù)制代碼 代碼如下:
<script>
function pageLoad()
{
var manager = Sys.WebForms.PageRequestManager.getInstance();
manager.add_beginRequest(OnBeginRequest);
manager.add_endRequest(OnEndRequest)
}
var lcPostbackElementID;
function OnBeginRequest(sender, args)
{
lcPostbackElementID = args.get_postBackElement().id.toLowerCase();
if (lcPostbackElementID === 'btnadwords')
{
$get('btnAdWords').disabled = true;
$get('btnAdWords').value='正在提交...';
}
}
function OnEndRequest(sender, args)
{
if (lcPostbackElementID === \"btnadwords\")
{
$get('btnAdWords').disabled = false;
$get('btnAdWords').value='確定';
}
}
< /script>
更多內(nèi)容請(qǐng)參考:http://msdn.microsoft.com/zh-cn/magazine/cc163319.aspx
相關(guān)文章
AJAX避免用戶重復(fù)提交請(qǐng)求實(shí)現(xiàn)方案
為了避免因某些原因用戶同時(shí)多次點(diǎn)擊按鈕,提交重復(fù)的請(qǐng)求,我們需要禁用請(qǐng)求提交按鈕,接下來(lái)與大家一起分享下實(shí)現(xiàn)方法2013-04-04基于firefox實(shí)現(xiàn)ajax圖片上傳
這篇文章主要介紹了基于firefox實(shí)現(xiàn)ajax圖片上傳,大家都知道在FF下使用ajax是件挺困難的事情,今天給大家介紹的是完美解決這個(gè)問(wèn)題的方法,小伙伴可以參考下。2015-05-05ajax從JSP傳遞對(duì)象數(shù)組到后臺(tái)的方法
今天小編就為大家分享一篇ajax從JSP傳遞對(duì)象數(shù)組到后臺(tái)的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-08-08基于Blod的ajax進(jìn)度條下載實(shí)現(xiàn)示例代碼
本篇文章主要介紹了基于Blod的ajax進(jìn)度條下載實(shí)現(xiàn)示例代碼,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-02-02淺談Ajax相關(guān)及其優(yōu)缺點(diǎn)
最近在學(xué)習(xí)有關(guān) AJAX 的知識(shí),上網(wǎng)查閱了一些有關(guān) AJAX 的資料,主要是有關(guān) AJAX的技術(shù)簡(jiǎn)介及其優(yōu)缺點(diǎn)等。在這里,我想對(duì)我收集的資料做一些小小的總結(jié),大部分資料都來(lái)自網(wǎng)上,本人在此只做分類總結(jié),希望對(duì)和我一樣正在學(xué)習(xí) AJAX 的朋友有一定的幫助。2015-06-06jQuery使用ajax跨域請(qǐng)求獲取數(shù)據(jù)
跨域這個(gè)詞應(yīng)用非常頻繁,主要是因?yàn)榘踩拗?同源策略, 即JavaScript或Cookie只能訪問(wèn)同域下的內(nèi)容)。本文給大家介紹jQuery使用ajax跨域請(qǐng)求獲取數(shù)據(jù),需要的朋友可以參考下2015-10-10JQuery+Ajax+Struts2+Hibernate框架整合實(shí)現(xiàn)完整的登錄注冊(cè)
最近沒(méi)有項(xiàng)目做,閑著沒(méi)事,看到一個(gè)書城的網(wǎng)站很好,于是就是仿了一個(gè),把里面的ui直接拿過(guò)來(lái)用,前端后端自己寫的,目前大部分的功能已經(jīng)實(shí)現(xiàn)了。2015-10-10