當前位置:開發者網絡 >> 技術教程 >> ASP教程 >> ASP應用 >> 內容
精彩推薦
分類最新教程
分類熱點教程
    
DHTML技巧--中止網頁的提交
作者:未知
日期:2004-08-27
人氣:
投稿:xiaxia(轉貼)
來源:未知
字體:
收藏:加入瀏覽器收藏
以下正文:
ASP.NET改變了我們的編程方法,使得開發BS程序更加簡單。但如果大量使用服務器控件勢必會造成網頁頻繁提交,操作極不友好,也增加了服務器的負擔。把一些必要的驗證工作放在客戶端執行,只有通過驗證時才進行提交,就可以大大減少網頁的刷新次數。

例如當我們按下「刪除」按鈕時,先在客戶端進行一下確認:彈出一個「是否真的要刪除」的對話框。當用戶按下「是」是才提交至服務器執行刪除程序。如果按下否,則終止後緒的提交動作。提交是不要進行太多可考慮,因為服務器的按鈕控件是會自動完成,現在我給大家介紹終止提交的方法:

在DHTML中,每一個事件的處理都可以用return false來終止後緒動作的執行。如<BODY oncontextmenu = 「javascript: return false;」>可以禁止頁面上的右鍵菜單。對於服務器的按鈕來說,我們可以在第一次載入時(PageLoad)服務器端給它加入一個OnClick屬性用來執行客戶端角本: this.DelButton.Attribute.Add(」OnClick」, 「javascript:return delConfirm();」);在用戶按下「刪除」按鈕時,它會先執行客戶的的delConfirm()函數。注意:紅色字體的javascript:return (用來接收函數的返回結果)及;號(按鈕的提交動作將以角本方式註冊在止之;號之後,如果不用;號來隔開將會出現語法錯誤)是必須的。而在客戶端的函數中必須要有返回結果,其中return false;將終止後面的角本操作,而其它返回結果將繼續執行。

這樣刪除處理的完整方法如下:

服務器端:

private void Page_Load()

{

...

if (!this.IsPostBack)

{

...

this.delButton.Attribute.Add(「OnClick「, 「javascript:return delConfirm();「);

...
}

...
}

...

private void delButton_Click(object sender, EventArgs e)

{

...
}

...

客戶端:

...

<SCRIPT language=javascript>

function delConfirm()

{

return confirm(「你真的要刪除嗎?「);
}

</SCRIPT>

...


相關文章: