2011-09-01 47 views
0

我常說我的aspx服務器端方法使用jQuery的幫助....像JQuery的服務器端方法調用內部

$.ajax({ 
      type: "POST", 
      url: "login.aspx/Authenticate", 
      data: JSON.stringify(DTO), 
      contentType: "application/json; charset=utf-8", 
      dataType: "json", 
      success: function (data) { 
       sHtml = data.d; 
       if (sHtml != "") { 
        alert(sHtml); 
        location.href = sHtml; 
       } 
      }, 
      error: function (XMLHttpRequest, textStatus, errorThrown) { 
       alert(textStatus); 
      } 

     }); 

但有趣的事情是,我不知道如何從jQuery的打電話給我的靜態方法外。 我看到,當我打電話給我的服務器端方法,然後page_load不會觸發,但在updatepanel部分回發page_load的情況下首先執行。

所以我想知道jQuery的內部邏輯,它如何直接調用服務器端方法........尋找好的解釋。感謝

回答

1

,所以我想知道的jQuery,這怎麼能叫服務器端方法直接

這不可能的內在邏輯。

jQuery可以導致瀏覽器向URI發出HTTP請求。

服務器可以運行代碼以響應請求的URI,以決定返回哪些內容和標題。

+0

你說: - jQuery可以讓瀏覽器向URI發出HTTP請求。 服務器可以響應請求的URI來運行代碼,以決定返回哪些內容和標題。我想怎麼可能... jQuery如何調用服務器端函數。當我們使用xmlhttp然後我們的page_load調用,但我們不能直接調用服務器端方法...然後jQuery如何調用特定的服務器端方法。請詳細指導我。謝謝 – Thomas

+0

它**不能**調用服務器端功能。它只能**導致請求URI。您必須設置您的網絡服務器,以便對該URI的請求導致您想要運行的功能運行。 – Quentin

+0

你說我們不能調用任何服務器端函數......我們只能提出請求......那麼jquery如何調用服務器端的靜態方法。萬一jquery我們永遠不必在web服務器上設置任何東西...不是嗎? – Thomas

0

在jquery的情況下會發生什麼是該方法被標記爲webmethod,這意味着它作爲一個httprequest端點,就像它是一個web服務,當你這樣做,然後jquery使這個方法的httprequest作爲如果他正在調用一個web服務。

這個網址就會給你當你做任何Ajax調用http://msdn.microsoft.com/en-us/magazine/cc163499.aspx

+0

你可以給我示例的JavaScript代碼,我可以調用特定的服務器端功能,而不是使用jQuery的....因爲如果我得到的JavaScript代碼,使特定的服務器端方法httprequest然後我可以瞭解整個事情如何jQuery工作中。謝謝 – Thomas

+0

檢查這個鏈接,它是我用來調用服務器端方法的鏈接http://geekswithblogs.net/frankw/archive/2008/03/13/asp.net-ajax-callbacks-to-web - 方法 - 在-ASPX,pages.aspx –

相關問題