操作成功 <c:choose> <c:when test="${news.rule==0 }"><a href="index.jsp">返回</a></c:when> <c:otherwise><a href="index2.jsp"></c:otherwise> </c:choose>修改这段代码使通过不同rule访问到不同的index页面
时间: 2023-08-14 09:21:14 浏览: 110
可以使用多个<c:when>标签来实现不同规则对应不同的页面,修改后的代码如下:
```html
<c:choose>
<c:when test="${news.rule==0}">
<a href="index.jsp">返回</a>
</c:when>
<c:when test="${news.rule==1}">
<a href="index1.jsp">返回</a>
</c:when>
<c:when test="${news.rule==2}">
<a href="index2.jsp">返回</a>
</c:when>
<c:otherwise>
<a href="index3.jsp">返回</a>
</c:otherwise>
</c:choose>
```
在这个例子中,当${news.rule}的值为0时,跳转到index.jsp页面;当值为1时,跳转到index1.jsp页面;当值为2时,跳转到index2.jsp页面;否则跳转到index3.jsp页面。
相关问题
将<c:choose> <c:when test="${fn:length(user.name)>2}"> ${fn:substring(user.name, 0, 1)}*${fn:substring(user.name, fn:length(user.name)-1, fn:length(user.name))} </c:when> <c:when test="${fn:length(user.name)<=2 && fn:length(user.name)>0}"> ${fn:substring(user.name, 0, 1)}* </c:when> <c:otherwise> </c:otherwise> </c:choose>写人String verifyName = verifyUser.getPhone(); if (verifyName.length() > 2){ } String idName = userInfo.getName(); // 进行比较 if (idName.equals(verifyName)) { userInfo.setName(verifyUser.getName()); } if (userInfo.getName().contains("*")){ out.print("<script>top.Dialog.alert('名字异常无法保存');window.location.href='id?u=" + userInfo.getUsername() + "';</script>"); out.close(); return; }
在给定的代码片段中,将`<c:choose>`、`<c:when>` 和 `<c:otherwise>` 标签替换为相应的代码逻辑,并将处理用户姓名的部分插入到Controller中:
```java
String verifyName = verifyUser.getPhone();
if (verifyName.length() > 2) {
verifyName = verifyName.substring(0, 1) + "*" + verifyName.substring(verifyName.length() - 1);
}
String idName = userInfo.getName();
// 进行比较
if (idName.equals(verifyName)) {
userInfo.setName(verifyUser.getName());
}
if (userInfo.getName().contains("*")) {
out.print("<script>top.Dialog.alert('名字异常无法保存');window.location.href='id?u=" + userInfo.getUsername() + "';</script>");
out.close();
return;
}
```
在上述代码中,我将原先的`<c:choose>`、`<c:when>` 和 `<c:otherwise>` 标签替换为Java代码逻辑,并将用户姓名处理的部分放置在验证手机号码后。现在你可以将这段代码插入到你的Controller中以实现相应的功能。
<c:choose> <c:when test="${fn:length(user.name)>2}"> ${fn:substring(user.name, 0, 1)}*${fn:substring(user.name, fn:length(user.name)-1, fn:length(user.name))} </c:when> <c:when test="${fn:length(user.name)<=2 && fn:length(user.name)>0}"> ${fn:substring(user.name, 0, 1)}* </c:when> <c:otherwise> </c:otherwise> </c:choose>
根据你提供的代码片段,这部分代码是通过 `<c:choose>`、`<c:when>` 和 `<c:otherwise>` 标签来对用户姓名进行处理的。它的逻辑如下:
1. 如果用户姓名的长度大于2,则将姓名的第一个字符保留,中间用*代替,最后一个字符保留。
2. 如果用户姓名的长度小于等于2且大于0,则只保留姓名的第一个字符,后面用*代替。
3. 如果用户姓名为空或长度为0,则不进行任何处理。
以下是修改后的代码示例:
```java
String userName = user.getName();
String processedName;
if (userName.length() > 2) {
processedName = userName.charAt(0) + "*" + userName.charAt(userName.length() - 1);
} else if (userName.length() <= 2 && userName.length() > 0) {
processedName = userName.charAt(0) + "*";
} else {
processedName = "";
}
// 使用 processedName 进行后续操作
```
在上述代码中,根据用户姓名的长度进行不同的处理,并将处理后的结果存储在 `processedName` 变量中。你可以根据实际需求使用 `processedName` 进行后续操作。
阅读全文