<c:out value="<a href='<%=serverLink%>'>clickHere </A>>" ....>
输出一个link该怎么实现?
如果按照上边那么写的话,就把<%=serverLink%>作为
字符串打出来了。

解决方案 »

  1.   

    <c:out value=" <a href='<c:url value="serverLink"/>'>clickHere </A>>" ....> 
      

  2.   

    上面的错了
    <c:out value=" <a href=' <c:url value="${serverLink}"/>'>clickHere </A>>" ....>
      

  3.   

    3楼的应该可以,既然你都用JSTL了,就不要写<%%>类似的东西了,JSTL联合EL,基本上都能解决了.
      

  4.   

    <c:out value="<a href=' ${serverLink}>'>clickHere </a> "   escapexml="true"/>jstl标签里有个escapexml属性的,你查一下,TRUE和FALSE都试一下。用来控制是否转义的。
      

  5.   

    用EL吧  
    TRUE和FALSE都试一下。用来控制是否转义的。这个也是重点,好像要设置成true  
      

  6.   

    jstl 本身就是把java重新封装的,所以在jstl代码中百分号是不认的,它只会把它当成普通的字符串。
    所以代码本身就是错误的。我刚重新写完,也作了测试,没有问题。代码如下:    <%
            //request.setAttribute("serverLink","aa.jsp");
            String serverLink = "http://www.baidu.com";
            request.setAttribute("serverLink",serverLink);
        %>
        <c:out value="<a href='${serverLink}'>clickHere </A>" escapeXml="false"/>这里注意的地方主要有:
    1,jstl中不允许有 <%%>
    2, 取变量是用 ${} 符号,并且变量在前面被set过。
    3,escapeXml得用false,不能用true. 使用true时它会把value值当成整个字符串。希望对你有所帮助。