JSP struts

JSP struts,jsp,struts,jsp-tags,Jsp,Struts,Jsp Tags,如何在JSP中的scriplet代码中分配一个变量,然后根据scriplet代码块中分配的变量的值使用struts逻辑标记进行操作 我尝试过使用struts:LogicEqual和greaterthan,但没有用 非常感谢,您想做的(如果我理解您的意思是正确的)基本上是: <% String foo = "Test"; %> <bean:write name="foo" /> 你已经知道,这是行不通的。这将产生如下错误: <% pageContext.setA

如何在JSP中的scriplet代码中分配一个变量,然后根据scriplet代码块中分配的变量的值使用struts逻辑标记进行操作

我尝试过使用struts:LogicEqual和greaterthan,但没有用

非常感谢,

您想做的(如果我理解您的意思是正确的)基本上是:

<% String foo = "Test"; %>
<bean:write name="foo" />

你已经知道,这是行不通的。这将产生如下错误:

<% pageContext.setAttribute("foo", "Test"); %>
<bean:write name="foo" />
在任何作用域中都找不到bean foo

我通常会这样做,将我的数据放在页面范围中:

<% pageContext.setAttribute("foo", "Test"); %>
<bean:write name="foo" />


(这适用于Struts 1.1。较新版本可能提供更好的方法。)

您可以使用标记在Struts2中设置变量。例如:

<c:set var="contains" value="true" />

可以测试逻辑:

<c:if test="%{#variable=='String 1'}">
    This is String 1
</c:if>

这是字符串1
其他来源:

所需标记库:

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>

在scriptlet中:

<%
   request.setAttribute("customerName", "rajesh");
%>

您可以签入struts逻辑标记,如

<logic:match name="customerName" value="Vijay"></logic:match>

我想你会发现:

scriptlet代码您必须在JSP上编写Java代码

<%int var=1; %>in jsp its declaration ( <%! int i = 0; %> )
jsp中的
及其声明()
expression元素可以包含根据Java语言规范有效的任何表达式,但不能使用分号结束表达式

<p>   Today's date: <%= (new java.util.Date()).toLocaleString()%></p>
今天的日期:

谢谢