if(httpRequest.readyState == 4 && httpRequest.status == 200)
{
<% SetText(); %>
}
C#方法,我需要從代碼在JavaScript調用後面的方法。方法顯然被稱爲SetText()
,它是無效的。從JavaScript調用
這我試過沒有奏效。
if(httpRequest.readyState == 4 && httpRequest.status == 200)
{
<% SetText(); %>
}
C#方法,我需要從代碼在JavaScript調用後面的方法。方法顯然被稱爲SetText()
,它是無效的。從JavaScript調用
這我試過沒有奏效。
這是不可能的,至少如果你沒有提出AJAX
請求。否則,不可能通過客戶端訪問服務器端方法(在這種情況下通過JS)。
客戶端無法以您在問題中指定的方式訪問服務器方法。除非你使用AJAX之類的東西,否則你想要做的事情是不可能的。
請解釋你正在嘗試做什麼,也許有人可以解釋一種不同的方式來解決你的問題。
您必須使用服務或處理程序公開C#方法。根據您的架構,處理程序可以以不同的方式實現(MVC,.net HttpHandler,JayRock處理程序等)。 然後您必須使用AJAX請求從Javascript調用該方法。
請記住,避免將CSharp代碼塊嵌入到服務器端生成的Javascript代碼中。
參考文獻:
做一個Ajax調用,有你檢查連接是否正常與否。如果連接正常,請在本地實際調用(在服務器端)並返回數據。
由於您提出了一個異步請求,所以頁面數據不會顯示任何錯誤消息。即使有一些錯誤,你也會得到錯誤處理程序,並且你知道發生錯誤時該怎麼做。
客戶端代碼必須直接與服務器方法聯繫時,不應該有任何情況。如果你的設計是這樣的,你總是可以解決這個問題。
您可以使用AJAX完成此操作。
我目前使用HTTPHandler通過AJAX進行通話。我使用的是服務「的.asmx」與代碼看起來像這樣
<%@ WebService Language="C#" Class="MyClass" %>
訪問我的處理程序嘗試此鏈接 http://www.c-sharpcorner.com/UploadFile/abhikumarvatsa/calling-an-Asp-Net-C-Sharp-method-web-method-using-javascript/
沒錯,但也不是沒有可能的AJAX調用:(。
請確保您已經導入了所有必需的jquery文件,並且您爲ajax調用編寫的函數應該是「STATIC」。
其餘部分將被清除,請按照鏈接
H I回答過類似的問題上從Javascript調用C#方法我提供了使用AJAX的例子:Call C# method in javascript function directly
希望這會有所幫助。
你不能這樣做,客戶端無法訪問服務器代碼,如果你多解釋一下你想實現的內容,我們可能可以提供更多幫助,也許服務方法? – Pharabus
我在檢查連接是否正常,然後調用一些方法,因爲我需要頁面始終保持連接,即使連接已關閉。那麼__doPostBack呢? –
@elninho什麼?這是沒有意義的。如果客戶已經下載了該頁面,它將一直處於「啓動」狀態。如果他們做了一些觸發服務器通話的事情,那麼,是的,網絡連接需要啓動,但是無論如何你不能做任何事情來僞造(除非你要預先下載你的整個網站)。 –