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]>