Javascript JSTL。如何从<;调用函数;脚本>;在c中:设置jstl标记?
我只需要这样的东西:Javascript JSTL。如何从<;调用函数;脚本>;在c中:设置jstl标记?,javascript,jstl,Javascript,Jstl,我只需要这样的东西: <c:set var="cls" value="${myFunc(param)}"/> ..... <script> function myFunc(param) { if(param == true) { return "aaa"; } else { return "bbb"; } } </script> .....
<c:set var="cls" value="${myFunc(param)}"/>
.....
<script>
function myFunc(param) {
if(param == true) {
return "aaa";
} else {
return "bbb";
}
}
</script>
.....
函数myFunc(参数){
if(param==true){
返回“aaa”;
}否则{
返回“bbb”;
}
}
当我尝试时,会出现以下错误:
org.apache.jasper.el.jspeleexception:/script.jsp(22,12)${myFunc()}
未找到函数[:myFunc]
你想做的是可能的吗 用一个词来回答这个问题的答案是否定的 让我们深入了解原因,这里有提示。。JSTL(JavaServerPages标准标记库)。。请参阅“服务器”一词。对 JSP页面的编译方式与Java文件类似。编译成功后,可以将其作为响应发送,然后浏览器呈现此响应并显示页面 JavaScript:是一种客户端编程语言,这意味着JavaScript中的代码由浏览器而不是服务器运行 当编译器编译Jsp文件时,它只围绕着Scriptlet和JSTL部分运行,其余的代码(我指的是HTML、CSS和JS代码的其余部分)只是一段字符串 现在,想象一下您的代码中的一种情况,当Java编译器试图编译时,它发现
myFunc
必须是一个方法,但在哪里查找呢
它不能将其视为javascript函数,因为javascript只在浏览器中运行,而不在服务器端运行。因此,您无法设置cls
变量的值,因为myFunc
对于Java来说是未知的
希望这能帮助您理解JSP和服务器端工作
记住以上几点,尝试一些更好的方法来解决你的问题
快乐编码:)我不知道你到底想要实现什么??你能详细说明一下吗?哦,我明白了。谢谢。