繁体   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