簡體   English   中英

在javascript中調用代碼隱藏函數時如何傳遞參數?

[英]How to pass parameters in when call code-behind function in javascript?

假設我在后面的代碼中有一個函數,例如:

Public Function Calc(ByVal ID As Integer) As Boolean
  '......
End Function

我可以像這樣在javascript中調用此函數

var isSuccess ='<%=Calc()%>'; 

但是在這種情況下如何傳遞參數呢? 以下代碼不起作用:

var ID = 1;
var isSuccess ='<%=Calc(ID)%>'; 

這里的ID應該從html元素獲取,例如var ID = document.getElementById(“ txtID”)。value;

該函數在頁面呈現時 (在服務器上)進行求值,並且var ID = 1被忽略/看不到……它與服務器端代碼無關。 您可以獲得的最接近的是:

var isSuccess ='<%=Calc(1)%>'; 

如果您想在javascript中動態查詢頁面中的內容,當用戶與頁面進行交互時……這並不是它真正的工作原理,您將需要AJAX回調和靜態頁面方法來執行此操作。

代碼var ID = 1; 將在瀏覽器中求Calc() ,但是Calc()是服務器端函數。 瀏覽器對Calc()一無所知,服務器對var ID一無所知。 這就是為什么它不起作用的原因。 您不能像這樣在服務器端和客戶端之間混合數據或邏輯。

正如Nick所建議的 ,您可能要使用: var isSuccess = '<%=Calc(1)%>'

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM