dgraham 2003/01/16 22:09:17 Modified: src/share/org/apache/struts/taglib/html JavascriptValidatorTag.java Log: Added cdata attribute to javascript tag for xhtml. Revision Changes Path 1.21 +37 -1 jakarta-struts/src/share/org/apache/struts/taglib/html/JavascriptValidatorTag.java Index: JavascriptValidatorTag.java =================================================================== RCS file: /home/cvs/jakarta-struts/src/share/org/apache/struts/taglib/html/JavascriptValidatorTag.java,v retrieving revision 1.20 retrieving revision 1.21 diff -u -r1.20 -r1.21 --- JavascriptValidatorTag.java 16 Jan 2003 03:55:09 -0000 1.20 +++ JavascriptValidatorTag.java 17 Jan 2003 06:09:17 -0000 1.21 @@ -1,4 +1,10 @@ /* + * $Header$ + * $Revision$ + * $Date$ + * + * ==================================================================== + * * The Apache Software License, Version 1.1 * * Copyright (c) 1999-2003 The Apache Software Foundation. All rights @@ -144,6 +150,11 @@ * The JavaScript methods will enclosed with html comments if this is set to "true". */ protected String htmlComment = "true"; + + /** + * Hide JavaScript methods in a CDATA section for XHTML when "true". + */ + protected String cdata = "true"; private String htmlBeginComment = "\n<!-- Begin \n"; @@ -515,6 +526,7 @@ staticJavascript = "true"; dynamicJavascript = "true"; htmlComment = "true"; + cdata = "true"; src = null; } @@ -528,6 +540,10 @@ sb.append(this.getStartElement()); + if (this.isXhtml() && "true".equalsIgnoreCase(this.cdata)) { + sb.append("<![CDATA[\r\n"); + } + if ("true".equals(htmlComment)) { sb.append(htmlBeginComment); } @@ -589,6 +605,10 @@ sb.append(htmlEndComment); } + if (this.isXhtml() && "true".equalsIgnoreCase(this.cdata)) { + sb.append("]]>\r\n"); + } + sb.append("</script>\n\n"); return sb.toString(); @@ -669,6 +689,22 @@ (String) this.pageContext.getAttribute(Globals.XHTML_KEY, this.pageContext.PAGE_SCOPE); return ("true".equalsIgnoreCase(xhtml)); + } + + /** + * Returns the cdata setting "true" or "false". + * @return String - "true" if JavaScript will be hidden in a CDATA section + */ + public String getCdata() { + return cdata; + } + + /** + * Sets the cdata status. + * @param cdata The cdata to set + */ + public void setCdata(String cdata) { + this.cdata = cdata; } }
-- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>