可以使用__doPostBack()
,或者不建議使用它,因爲它是從ASP.Net生成的,我們不確定它們是否在下一版本的ASP.Net中進行了更改。使用__doPostBack()可以嗎?
17
A
回答
17
我會反對它的建議,因爲它是ASP.NET
的內部東西,並沒有打算直接使用。
相反,我在做什麼,當我需要「手動」觸發回發將隱藏「服務器端」按鈕,用適當的OnClick:
<asp:Button id="btnDummy" runat="server" OnClick="Foo" style="display: none;" />
那麼JS是:
document.getElementById("<%=btnDummy.ClientID%>").click();
這種方式我不在乎如何回帖發生,我只是觸發事件的自然流動。
8
你不應該直接調用它。你應該生成使用功能的JavaScript調用中Page.ClientScript
如:
這將確保它始終兼容。
1
他們可能不會改變它,但爲什麼直接調用它?
我認爲這是一個更好的策略來觸發事件(例如按鈕點擊)並讓控件觸發回發。
我確實需要直接觸發回傳,建議使用描述的Page.ClientScript函數。
1
我認爲它直接使用非常好,並且使用它沒有失敗,畢竟它只是一個JavaScript函數。
0
我們在所有地方使用它,我無法想象它會被剝離出ASP.NET。我認爲假的/隱藏的按鈕方法就好像不是更糟。如果您使用僞按鈕方法,那麼您無法選擇傳入__EVENTARGUMENT。我喜歡使用__EVENTARGUMENT將數據傳遞到服務器上比創建隱藏字段更好,因爲黑客會比單純將隱藏字段發回到我的頁面更難。我也不喜歡在頁面上創建字段和控件的想法,如果它們甚至不被顯示。我相信,假按鈕方法對於新手編碼人員來說可能更容易理解。這就是說,我正在尋找一種更優雅的方式來處理這個問題,但仍然發現我自己打電話
__doPostBack('%=UpdatePanel.ClientID%>','MyData')
在某些情況下。
相關問題
- 1. 可以使用LISTAGG嗎?
- 2. ELMAH可以使用Oracle.ManagedDataAccess嗎?
- 3. 使用Ruby 1.8.5可以嗎?
- 4. mootools.js可以使用microsoftajax.js嗎?
- 5. UIMoviePlayerController ...可以使用它嗎?
- 6. SVD可以使用Skydrive嗎?
- 7. 可以使用JAXX嗎?
- 8. iMac可以使用CLLocationManager嗎?
- 9. VS2010可以使用VisualStudio.com嗎?
- 10. SAP可以使用Python嗎?
- 11. 可以使用GoTo嗎?
- 12. 我可以使用PayPal嗎?
- 13. web2py可以使用svn嗎?
- 14. 可以使用Cassandra Collections嗎?
- 15. 可以用()嗎?
- 16. 使用C#可以使用OrientDB嗎?
- 17. 使用Pixastic可以使用jQuery嗎?
- 18. 使用Bootstrap可以使iframe響應嗎?
- 19. 可以用okhttp3 websocket使用STOMP嗎?
- 20. 我可以用layoutdialect使用spring thymeleaf嗎?
- 21. 我可以用sshtunnel使用Python Peewee嗎?
- 22. 可以用nameko使用python3嗎?
- 23. 可以使用xml循環引用嗎?
- 24. 用jwt可以嗎?
- 25. __doPostBack()是否可能發送GET請求?
- 26. 使用AngularJS($ http),我可以使用以下調用順序嗎?
- 27. 爲新項目使用Rails 3.1可以嗎?難以轉換嗎?
- 28. asp.net forms ScriptManager __doPostback
- 29. 顯式__doPostBack()
- 30. ClientScript.RegisterForEventValidation和__doPostBack()
是的,它只是「一個JavaScript函數」,但問題是沒有*保證*它將出現在下一個版本中。 – 2011-03-27 12:24:04