從程式碼隱藏呼叫 JavaScript 函數
問題:
如何有效地從程式碼隱藏呼叫 JavaScript 函數,反之亦然?
解答:
要從程式碼隱藏呼叫 JavaScript 函數,請使用下列方法:
Page.ClientScript.RegisterStartupScript(this.GetType(), "CallMyFunction", "MyFunction()", true);
此程式碼動態註冊一個將在頁面載入期間呼叫的 JavaScript 函數。 “MyFunction”是要呼叫的 JavaScript 函數的名稱。
要從 JavaScript 呼叫程式碼隱藏方法,可以使用 Web 服務或 AJAX 技術:
WebMethod
[WebMethod] public string ExecuteSomething(string input) { // 要执行的操作代码 return "Result from CodeBehind"; // 返回结果 }
在 JavaScript 中:
PageMethods.ExecuteSomething('myInput', OnSuccess, OnFailure); function OnSuccess(result) { // 使用结果 console.log(result); } function OnFailure(error) { // 处理错误 console.error(error); }
AJAX
function CallCodeBehind() { $.ajax({ url: "CodeBehindPage.aspx/ExecuteSomething", type: "POST", data: JSON.stringify({ input: "myInput" }), contentType: "application/json; charset=utf-8", dataType: "json", success: function (data) { // 使用结果 console.log(data.d); // d 属性包含服务器返回的结果 }, error: function (xhr, status, error) { // 处理错误 console.error(error); } }); }
透過使用這些技術,您可以無縫地在伺服器端程式碼隱藏和客戶端 JavaScript 之間進行互動。 請注意,AJAX 範例已更新為更現代和健全的 JSON 處理方式,包括錯誤處理。 WebMethod 範例也增加了明確的錯誤處理和結果回傳。
以上是如何從 CodeBehind 呼叫 JavaScript 函數,反之亦然?的詳細內容。更多資訊請關注PHP中文網其他相關文章!