使用JQuery启用和禁用“链接”

时间:2014-06-12 20:48:18

标签: java javascript jquery jsp servlets

如何根据JSP页面中的某些值匹配启用和禁用链接。所以我有一个名为person的列,其值为ATL等,并基于每个value JSP中的链接页面需要disabled and enabled说 -

  

我想在JSP页面上禁用设置链接,如果值是   如果servlet中的值为A

,则Servlet响应为T或启用

Servlet代码 -

public void handleRequest(HttpServletRequest req, HttpServletResponse resp) throws Exception {
HttpSession session = req.getSession(true);
String person= profile.getPerson(); // person = 'A' (assume)
req.setAttribute("pers", person); // 'A' is sent to JSP
this.getServletContext().getRequestDispatcher( "/myPage.jsp" ).forward( req, response );
}

ProfileVO.java -

@Entity
@Table(name = "profile")

public class ProfileVO implements Serializable {
 private static final long serialVersionUID = 1L;
   @NotNull
   private String person;
   private String email;

   public String getPerson() {
        return person;
    }

    public void setPerson(String person) {
        this.person = person;
    }

    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    @Override
    public String toString() {
        final StringBuilder sb = new StringBuilder();
        sb.append("Profile")
                .append(", email='").append(email).append('\'')
                .append(", person='").append(person).append('\'')
                .append('}');
        return sb.toString();
    }

HTML代码 -

<div id="header">
    <p><a href="/test.jsp">Settings</a> | Terms & Conditions </p>
</div>

在HTML代码中,我需要根据从servlet获取的值启用/禁用settings上的链接。

我应该怎么做using JQuery?或者有没有其他方法可以检查JSP或Jquery中的值,以便在用户登录后立即禁用或启用设置链接?

2 个答案:

答案 0 :(得分:0)

使用java scriplets可以在JSP页面的服务器端更好地完成这项工作。

由于您可以访问发送到&#34; myPage.jsp&#34;的HttpServletRequest。来自RequestDispatcher的JSP页面,您可以访问"pers"参数并在scriplet中使用它:

<div id="header">
    <p><a href="<%= request.getParameter("pers").equals("A")? "/test.jsp": "javascript:void(0);" ">Settings</a> | Terms & Conditions </p>
</div>

在此scriplet中,您可以看到它检查pers参数,如果它等于&#34; A&#34;,它会将正确的"/test.jsp"值添加到href属性。否则,它会添加"javascript:void(0);"占位符,以便在用户点击链接时没有任何操作。

答案 1 :(得分:0)

像这样更改HTML(我希望它是一个JSP文件)

<p><a href=<%=((String)req.getAttribute("pers")).equals("A")?"'/test.jsp'":"'javascript:;'"%>>Settings</a> | Terms & Conditions </p>

或者

<%  String pers = (String)req.getAttribute("pers"); %>
<a href=<%=pers.equals("A")?"'/test.jsp'":"'javascript:;'"%>>Settings</a> | Terms & Conditions </p>