xsl-list
[Top] [All Lists]

Re: XSL checkbox

2004-05-18 08:13:41
What is the HTMl that is produced? I've just looked at the Pocket PC specs but can't see why it shouldn't work.

--
Joe
----- Original Message ----- From: "Adrian Popescu" <adrian(_at_)setmobile(_dot_)ro>
To: <xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com>
Sent: Tuesday, May 18, 2004 4:00 PM
Subject: Re: [xsl] XSL checkbox


10x.......it doesnt't work with Pocket PC Internet Explorer but 10x anyway
----- Original Message ----- From: "Joe Fawcett" <joefawcett(_at_)hotmail(_dot_)com>
To: <xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com>
Sent: Tuesday, May 18, 2004 5:49 PM
Subject: Re: [xsl] XSL checkbox


----- Original Message ----- From: "Adrian Popescu" <adrian(_at_)setmobile(_dot_)ro>
To: <xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com>
Sent: Tuesday, May 18, 2004 3:33 PM
Subject: Re: [xsl] XSL checkbox


>I am newbie in XSL and I search ALL GOOGLE for an example:((
>
> this is my XSL
>
> <?xml version="1.0"?>
> <xsl:stylesheet xmlns:xsl="uri:xsl">
>  <xsl:template match="/">
>    <SCRIPT>
>    function change(title_id)
>    {
>      alert(title_id);
>      var root = detailXSL.documentElement;
>      var selectedElems =  root.selectNodes("//xsl:for-each");
>      var ifStatement = selectedElems.item(0);
>      ifStatement.attributes(0).text =
>                      "@title_id[.='" + title_id + "']";
>
>      document.write(titles.transformNode(detailXSL.documentElement));
>    }
>    </SCRIPT>
>    <H3>Titles</H3>
>    <TABLE BORDER="1" CELLPADDING="1" CELLSPACING="0">
>      <TR>
>        <TD BGCOLOR="#C0C0C0"><B>Title</B></TD>
>        <TD BGCOLOR="#C0C0C0"><B>Details</B></TD>
>      </TR>
>      <xsl:for-each select="titlelist/titles" order-by="@title">
>        <TR>
>          <TD VALIGN="top"><xsl:value-of select="@title"/></TD>
>          <TD VALIGN="top"><INPUT>
>            <xsl:attribute name="TYPE">checkbox</xsl:attribute>
>            <xsl:attribute name="VALUE">c1</xsl:attribute>
>            <xsl:attribute name="ONCLICK">
>
>                   <xsl:attribute
> name="backgroundcolor">yellow</xsl:attribute>
>
>               <xsl:apply-templates/>
>
>            </xsl:attribute>
>          </INPUT></TD>
>        </TR>
>      </xsl:for-each>
>    </TABLE>
>    <XML ID="titles" SRC="titles.xml"></XML>
>    <XML ID="detailXSL" SRC="details.xsl"></XML>
>  </xsl:template>
> </xsl:stylesheet>
>
>
>

As was said this seems more like an HTML question but you are using
xsl:attribute incorrectly.
The htnl you need is:
<input type="checkbox" onclick="toggleColour(this);">
so your xsl should be (I haven't checked any other stuff):
<INPUT>
            <xsl:attribute name="TYPE">checkbox</xsl:attribute>
            <xsl:attribute name="VALUE">c1</xsl:attribute>
            <xsl:attribute name="ONCLICK">
           toggleColour(this);
           </xsl:attribute>

               <xsl:apply-templates/>
Then output the following script block somewhere, as you have with your
other block:

<script>
<![CDATA[

  function toggleColour(Element)
 {
    if (Element.style.backgroundColor == "#ffff00"
   {
     Element.style.backgroundColor = "#ffffff";
   }
   else
   {
     Element.style.backgroundColor = "#ffff00";
   }
 }
]]>
</script>

Now you could put that code into an inline event handler but it would be
rather messy :)

--

Joe

--+------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--+--

--+------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--+--




<Prev in Thread] Current Thread [Next in Thread>