Javascript中带<;%%的开关大小写&燃气轮机;标签

Javascript中带<;%%的开关大小写&燃气轮机;标签,javascript,jsp,conditional-statements,Javascript,Jsp,Conditional Statements,我需要在JSP文件中执行以下类似的代码: <%! String value; %> function setValue(val) { switch(val) { case 1: <% value = "value1";%> break; case 2: <% value = "value2";%> break; case 3: <% value = "value3";%> break; } <% //Java code with use o

我需要在JSP文件中执行以下类似的代码:

<%! String value; %>
function setValue(val)
{
switch(val)
{
case 1:
<% value = "value1";%>
break;
case 2:
<% value = "value2";%>
break;
case 3:
<% value = "value3";%>
break;
}
<% //Java code  with use of value %>
}

函数设置值(val)
{
开关(val)
{
案例1:
打破
案例2:
打破
案例3:
打破
}
}

上述代码总是以在变量“value”中设置“value3”结束。有人能提供解决方案吗?

您正在尝试使用客户端开关设置服务器端变量

如果需要在服务器端更改值,则需要将其更改为

<%! 
String value;
public String setValue(val)
    {
    String value="";
    switch(val)
        {
        case 1:
            value = "value1";
            break;
        case 2:
            value = "value2";
            break;
        case 3:
            value = "value3";
            break;
        }
    return value;     
 }
 //Java code  with use of value %>

如果您需要客户端,您需要将其更改为

<%! String value; %>
function setValue(val)
     {
     switch(val)
          {
          case 1:
               value = "value1";
               break;
          case 2:
               value = "value2";
               break;
          case 3:
               value = "value3";
               break;
          }
<% //Java code  with use of value as a javascript variable name %>
}

函数设置值(val)
{
开关(val)
{
案例1:
value=“value1”;
打破
案例2:
value=“value2”;
打破
案例3:
value=“value3”;
打破
}
}

呈现的代码看起来像什么这是因为您正在javascript中的条件语句上操作类级别变量,这是不可能的。jsp编译器将首先计算java代码。。这就是为什么
value=value3
alwaysHi Michael,在上面的第二段代码中,我如何在Java代码中使用Javascript的'value'变量?不是。javascript在客户端得到评估的那一刻。如果您想在服务器端使用它,您需要向服务器发出一个json请求,在那里它可以在一个单独的进程中处理。