是否可以从jsp的java部分执行javascript函数?

是否可以从jsp的java部分执行javascript函数?,javascript,java,jsp,Javascript,Java,Jsp,在jsp中,我需要一个用javascript定义的函数 <script type="text/javascript"> function forSignup(){ if(document.getElementById("sign").style.display=='none') { document.getElementById("sign").style.display='block'; document.getElementBy

在jsp中,我需要一个用javascript定义的函数

<script type="text/javascript">
function forSignup(){

    if(document.getElementById("sign").style.display=='none')
    {

        document.getElementById("sign").style.display='block';
        document.getElementById("login form").style.display='none';
    }

    else
    {
        document.getElementById("login form").style.display='block';
        document.getElementById("sign").style.display='none';
    }
</script> 

函数forSignup(){
if(document.getElementById(“sign”).style.display=='none')
{
document.getElementById(“sign”).style.display='block';
document.getElementById(“登录表单”).style.display='none';
}
其他的
{
document.getElementById(“登录表单”).style.display='block';
document.getElementById(“sign”).style.display='none';
}
从jsp的java部分调用时执行,条件是servlet将整数的值发送为1

有可能吗


如果是,请告诉我应该如何执行?

您可以使用
块来包含基于JSP中变量的JavaScript。

JavaScript可以从Java代码执行,但它并不简单,您发布的代码必须从DOM运行,因此无法在服务器端处理。此外,使用scriptlets非常容易最好先为页面准备模型(通常使用SpringMVC之类的框架),然后只使用模板进行渲染


您想要做的是条件逻辑,根据某些状态(例如用户是否登录)确定是否显示元素。使用
在呈现的HTML中选择性地包含代码(直接设置CSS,而不是绕道JavaScript).

我假设这大致就是您要查找的。如果服务器端变量(intValue)等于1,则调用该函数,否则不要调用

<% if (intValue == 1) { %>
    <script type="text/javascript">
        forSignup();
    </script>
<% } %>

forSignup();

但请记住,您实际上并不是“从Java”调用此Javascript函数。您只是确保根据服务器端条件调用Javascript函数,这取决于所讨论的整数值。

如果您想在Javascript方法中执行Java代码

<script >
 function login(){
 <% System.out.println("Hiiiiiiiii"); 

 %>
 var password="test"
 }
</script>

函数登录(){
var password=“测试”
}

JavaScript是客户端语言,Java是服务器端语言。@kevingreen在这两个方面都错了。@chrylis想详细说明一下,还是参与讨论?@kevingreen Java可以在客户端运行,JavaScript在JVM和节点中都在服务器端使用。@chrylis这显然不是Node.js,JSP在客户端中也不常用(桌面)应用程序。