簡體   English   中英

.Net將“__doPostBack”添加到javaScript onClick事件中......為什么?

[英].Net adds “__doPostBack” to javaScript onClick event… why?

通常,.NET通過使按鈕為type =“submit”來處理按鈕上的回發事件:

<input type="submit" Text="Delete" />

但是,我最近碰到了一種情況,即.NET通過輸入一個type =“button”來處理回發,然后添加一個javaScript onClick事件來執行“__doPostBack()” - 所以你最終得到這個:

<input type="button" onClick="__doPostBack(...);" />

這樣做的問題是嘗試向點擊添加確認消息。 所以在第二個場景中,我最終得到了這個:

<input type="button" onClick="return confirm('Are you sure?'); __doPostBack(...);" Text="Delete" />

當然,在上面的場景中,回發永遠不會發生。

我想知道的是為什么.net在那里選擇一個場景,有沒有辦法阻止第二個?

謝謝

您需要輸出如下:

<input type="button" onClick="if(!confirm('Are you sure?')){return false};__doPostBack(...);" Text="Delete" />

如果確認為真或假,則返回它,您將不會執行回發。 但是,如果你只是假的,你應該沒事。

__doPostBack使.net能夠添加額外的功能,例如客戶端驗證檢查。 如果它需要這樣做,它會做。

關於您的實現,您可以使用按鈕的OnClientClick屬性來設置任何其他腳本。

答案是:

在ajax場景中工作時,.Net在onClick事件中使用__doPostBack(...)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM