2012-01-23 35 views
0

控件我有一個[WebMethod],我想將值分配給使用該代碼的文本框:如何獲得靜態Web方法

[WebMethod] 
public static void MyMethod(string s) 
{ 
    //TextBox1.Text = s; //Here how can i access the textbx? 
} 
+0

重複的問題。請通過這篇文章http://stackoverflow.com/questions/2133194/access-asp-net-control-from-static-webmethod-js-ajax-call – Devjosh

回答

15

你不能。

[WebMethod]就是全部的一點是,它們不運行的ASP.Net頁面生命週期。這樣,它們快速並行。
您的控件不存在。

相反,你應該使用JavaScript(更好),或在UpdatePanel(差)。

在靜態方法(即第方法異步調用)的情況下
+0

如果我卡住使用網絡方法(有很重要的ac#庫),有沒有一種方法可以訪問頁面的標記來做一些事情,比如發送一個警報,說明發生了什麼? –

1

,整個頁面不貼back..and因此有關於頁面控件在服務器上沒有信息(文本或其他)..

服務器不保留任何控件的狀態或因此而呈現,除非做這樣的(會話或任何其他國家管理)..

所以,如果你想工作一個頁面控件的值,例如發送在異步請求本身中的信息,並處理這些值並返回響應。並將其分配給客戶端腳本中的相應控件。