Thanks Martin, I wil try to do it. However, I'm using Firefox and not
Windows.

Irene

2009/11/9 Martin Gainty <mgai...@hotmail.com>

>
> Irene-
> the standard onLoad="javascript:function" doesnt seem to work (in IE at
> least) so use this document.write to replace __ie_onload
> /*information courtesy of dean edwards*/
> http://dean.edwards.name/weblog/2006/06/again/
>
> <%@ page contentType="text/html; charset=UTF-8" %>
> <%@ taglib prefix="s" uri="/struts-tags" %>
> <%@ page language="java" contentType="text/html; charset=UTF-8"
> pageEncoding="UTF-8"%>
> <html>
> <head>
> <title>This is the title</title>
> <script LANGUAGE="JavaScript" type="text/javascript">
> function init()
> { // if set to true then mouseover a table cell will
> alert('inside init()');
> //highlight entire column (except sibling headings)
> document.forms[0].Title.value='newTitle';
> document.forms[0].Author.value='newAuthor';
> document.forms[0].Ending.value='newEnding';
> document.forms[0].Energy.value='newEnergy';
> document.forms[0].Flatness.value='newFlatness';
> document.forms[0].Validate.value='newValidate';
> document.forms[0].Play.value='newPlay';
> }
> /** for Internet Explorer (using conditional comments) **/
> /*...@cc_on @*/
> /*...@if (@_win32)
> document.write("<script id=__ie_onload defer
> src=javascript:void(0)><\/script>");
> var script = document.getElementById("__ie_onload");
> script.onreadystatechange = function() {
>  if (this.readyState == "complete") {
>    init(); // call the onload handler
>  }
> };
> /*...@end @*/
> window.onload = init;
> //-->
> </script>
> </head>
>
> <body onLoad="'window.onload = init'">
>
> <p>This is a test for Irene </p>
> <s:div href="javascript:tablecloth_function">
> </s:div>
> <form action="somethingAction" name="theForm" >
> <table>
>  <tr>
>    <th><s:textfield name="Title" label="Title" value="DefaultTitle"/></th>
>    <th><s:textfield name="Author" label="Author" value="DefaultAuthor"
> /></th>
>    <th><s:textfield name="Ending" label="Ending" value="DefaultEnding"
> /></th>
>    <th><s:textfield name="Energy" label="Energy" value="DefaultEnergy"
> /></th>
>    <th><s:textfield name="Flatness" label="Flatness"
> value="DefaultFlatness" /></th>
>    <th><s:textfield name="Validate" label="Validate"
> value="DefaultValidate" /></th>
>    <th><s:textfield name="Play" label="Play" value="DefaultPlay" /></th>
>   </tr>
> <s:iterator value="songs" status="rowstatus">
>  <tr>
>    <td><s:property value="songs[#rowstatus.index].title" /></td>
>    <td><s:property value="songs[#rowstatus.index].author" /> </td>
> <s:hidden name="songs[#rowstatus.index].id">
> </s:hidden>
>  </tr>
> </s:iterator>
> </table>
> <s:submit value="SUBMIT" />
> </form>
> </body>
> </html>
>
> hth
> Martin Gainty
> ______________________________________________
> Verzicht und Vertraulichkeitanmerkung/Note de déni et de confidentialité
>
> Diese Nachricht ist vertraulich. Sollten Sie nicht der vorgesehene
> Empfaenger sein, so bitten wir hoeflich um eine Mitteilung. Jede unbefugte
> Weiterleitung oder Fertigung einer Kopie ist unzulaessig. Diese Nachricht
> dient lediglich dem Austausch von Informationen und entfaltet keine
> rechtliche Bindungswirkung. Aufgrund der leichten Manipulierbarkeit von
> E-Mails koennen wir keine Haftung fuer den Inhalt uebernehmen.
> Ce message est confidentiel et peut être privilégié. Si vous n'êtes pas le
> destinataire prévu, nous te demandons avec bonté que pour satisfaire
> informez l'expéditeur. N'importe quelle diffusion non autorisée ou la copie
> de ceci est interdite. Ce message sert à l'information seulement et n'aura
> pas n'importe quel effet légalement obligatoire. Étant donné que les email
> peuvent facilement être sujets à la manipulation, nous ne pouvons accepter
> aucune responsabilité pour le contenu fourni.
>
>
>
>
> > Date: Sun, 8 Nov 2009 22:43:09 +0100
> > Subject: Re: sx:div and executeScript
> > From: irenezel...@gmail.com
> > To: user@struts.apache.org
> >
> > Yes, it is basically to give style to the table.
> >
> > this.tablecloth = function(){
> >
> >     // CONFIG
> >
> >     // if set to true then mouseover a table cell will highlight entire
> > column (except sibling headings)
> >     var highlightCols = false;
> >
> >     // if set to true then mouseover a table cell will highlight entire
> > row    (except sibling headings)
> >     var highlightRows = true;
> >
> >     // if set to true then click on a table sell will select row or
> column
> > based on config
> >     var selectable = true;
> >
> >     // this function is called when
> >     // add your own code if you want to add action
> >     // function receives object that has been clicked
> >     this.clickAction = function(obj){
> >         //alert(obj.innerHTML);
> >
> >     };
> >
> >
> >
> >     // END CONFIG (do not edit below this line)
> >
> >
> >     var tableover = false;
> >     this.start = function(){
> >         var tables = document.getElementsByTagName("table");
> >         for (var i=0;i<tables.length;i++){
> >             tables[i].onmouseover = function(){tableover = true};
> >             tables[i].onmouseout = function(){tableover = false};
> >
> >             rows(tables[i]);
> >         };
> >     };
> >
> >     this.rows = function(table){
> >         var css = "";
> >         var tr = table.getElementsByTagName("tr");
> >         for (var i=0;i<tr.length;i++){
> >             css = (css == "odd") ? "even" : "odd";
> >             tr[i].className = css;
> >             var arr = new Array();
> >             for(var j=0;j<tr[i].childNodes.length;j++){
> >                 if(tr[i].childNodes[j].nodeType == 1)
> > arr.push(tr[i].childNodes[j]);
> >             };
> >             for (var j=0;j<arr.length;j++){
> >                 arr[j].row = i;
> >                 arr[j].col = j;
> >                 if(arr[j].innerHTML == " " || arr[j].innerHTML == "")
> > arr[j].className += " empty";
> >                 arr[j].css = arr[j].className;
> >                 arr[j].onmouseover = function(){
> >                     over(table,this,this.row,this.col);
> >                 };
> >                 arr[j].onmouseout = function(){
> >                     out(table,this,this.row,this.col);
> >                 };
> >                 arr[j].onmousedown = function(){
> >                     down(table,this,this.row,this.col);
> >                 };
> >                 arr[j].onmouseup = function(){
> >                     up(table,this,this.row,this.col);
> >                 };
> >                 arr[j].onclick = function(){
> >                     click(table,this,this.row,this.col);
> >                 };
> >             };
> >         };
> >     };
> >
> >     // appyling mouseover state for objects (th or td)
> >     this.over = function(table,obj,row,col){
> >         if (!highlightCols && !highlightRows) obj.className = obj.css + "
> > over";
> >         if(check1(obj,col)){
> >             if(highlightCols) highlightCol(table,obj,col);
> >             if(highlightRows) highlightRow(table,obj,row);
> >         };
> >     };
> >     // appyling mouseout state for objects (th or td)
> >     this.out = function(table,obj,row,col){
> >         if (!highlightCols && !highlightRows) obj.className = obj.css;
> >         unhighlightCol(table,col);
> >         unhighlightRow(table,row);
> >     };
> >     // appyling mousedown state for objects (th or td)
> >     this.down = function(table,obj,row,col){
> >         obj.className = obj.css + " down";
> >     };
> >     // appyling mouseup state for objects (th or td)
> >     this.up = function(table,obj,row,col){
> >         obj.className = obj.css + " over";
> >     };
> >     // onclick event for objects (th or td)
> >     this.click = function(table,obj,row,col){
> >         if(check1){
> >             if(selectable) {
> >                 unselect(table);
> >                 if(highlightCols) highlightCol(table,obj,col,true);
> >                 if(highlightRows) highlightRow(table,obj,row,true);
> >                 document.onclick = unselectAll;
> >             }
> >         };
> >         clickAction(obj);
> >     };
> >
> >     this.highlightCol = function(table,active,col,sel){
> >         var css = (typeof(sel) != "undefined") ? "selected" : "over";
> >         var tr = table.getElementsByTagName("tr");
> >         for (var i=0;i<tr.length;i++){
> >             var arr = new Array();
> >             for(j=0;j<tr[i].childNodes.length;j++){
> >                 if(tr[i].childNodes[j].nodeType == 1)
> > arr.push(tr[i].childNodes[j]);
> >             };
> >             var obj = arr[col];
> >             if (check2(active,obj) && check3(obj)) obj.className =
> obj.css +
> > " " + css;
> >         };
> >     };
> >     this.unhighlightCol = function(table,col){
> >         var tr = table.getElementsByTagName("tr");
> >         for (var i=0;i<tr.length;i++){
> >             var arr = new Array();
> >             for(j=0;j<tr[i].childNodes.length;j++){
> >                 if(tr[i].childNodes[j].nodeType == 1)
> > arr.push(tr[i].childNodes[j])
> >             };
> >             var obj = arr[col];
> >             if(check3(obj)) obj.className = obj.css;
> >         };
> >     };
> >     this.highlightRow = function(table,active,row,sel){
> >         var css = (typeof(sel) != "undefined") ? "selected" : "over";
> >         var tr = table.getElementsByTagName("tr")[row];
> >         for (var i=0;i<tr.childNodes.length;i++){
> >             var obj = tr.childNodes[i];
> >             if (check2(active,obj) && check3(obj)) obj.className =
> obj.css +
> > " " + css;
> >         };
> >     };
> >     this.unhighlightRow = function(table,row){
> >         var tr = table.getElementsByTagName("tr")[row];
> >         for (var i=0;i<tr.childNodes.length;i++){
> >             var obj = tr.childNodes[i];
> >             if(check3(obj)) obj.className = obj.css;
> >         };
> >     };
> >     this.unselect = function(table){
> >         tr = table.getElementsByTagName("tr")
> >         for (var i=0;i<tr.length;i++){
> >             for (var j=0;j<tr[i].childNodes.length;j++){
> >                 var obj = tr[i].childNodes[j];
> >                 if(obj.className) obj.className =
> > obj.className.replace("selected","");
> >             };
> >         };
> >     };
> >     this.unselectAll = function(){
> >         if(!tableover){
> >             tables = document.getElementsByTagName("table");
> >             for (var i=0;i<tables.length;i++){
> >                 unselect(tables[i])
> >             };
> >         };
> >     };
> >     this.check1 = function(obj,col){
> >         return (!(col == 0 && obj.className.indexOf("empty") != -1));
> >     }
> >     this.check2 = function(active,obj){
> >         return (!(active.tagName == "TH" && obj.tagName == "TH"));
> >     };
> >     this.check3 = function(obj){
> >         return (obj.className) ? (obj.className.indexOf("selected") ==
> -1) :
> > true;
> >     };
> >
> >     start();
> >
> > };
> >
> > /* script initiates on page load. */
> >
> >     window.onload = tablecloth;
> >
> >
> > 2009/11/8 Martin Gainty <mgai...@hotmail.com>
> >
> > >
> > > can you display the function(s) inside tablecloth.js
> > >
> > > thx
> > > Martin Gainty
> > > ______________________________________________
> > > Verzicht und Vertraulichkeitanmerkung/Note de déni et de
> confidentialité
> > >
> > > Diese Nachricht ist vertraulich. Sollten Sie nicht der vorgesehene
> > > Empfaenger sein, so bitten wir hoeflich um eine Mitteilung. Jede
> unbefugte
> > > Weiterleitung oder Fertigung einer Kopie ist unzulaessig. Diese
> Nachricht
> > > dient lediglich dem Austausch von Informationen und entfaltet keine
> > > rechtliche Bindungswirkung. Aufgrund der leichten Manipulierbarkeit von
> > > E-Mails koennen wir keine Haftung fuer den Inhalt uebernehmen.
> > > Ce message est confidentiel et peut être privilégié. Si vous n'êtes pas
> le
> > > destinataire prévu, nous te demandons avec bonté que pour satisfaire
> > > informez l'expéditeur. N'importe quelle diffusion non autorisée ou la
> copie
> > > de ceci est interdite. Ce message sert à l'information seulement et
> n'aura
> > > pas n'importe quel effet légalement obligatoire. Étant donné que les
> email
> > > peuvent facilement être sujets à la manipulation, nous ne pouvons
> accepter
> > > aucune responsabilité pour le contenu fourni.
> > >
> > >
> > >
> > >
> > > > Date: Sun, 8 Nov 2009 20:49:29 +0100
> > > > Subject: Re: sx:div and executeScript
> > > > From: irenezel...@gmail.com
> > > > To: user@struts.apache.org
> > > >
> > > > This is the jsp I'm calling:
> > > >
> > > > <%@ page contentType="text/html; charset=UTF-8" %>
> > > > <%@ taglib prefix="s" uri="/struts-tags" %>
> > > > <%@ taglib prefix="sx" uri="/struts-dojo-tags" %>
> > > >
> > > > <?xml version="1.0" encoding="UTF-8" ?>
> > > > <%@ page language="java" contentType="text/html; charset=UTF-8"
> > > >     pageEncoding="UTF-8"%>
> > > > <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "
> > > > http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd";>
> > > > <html xmlns="http://www.w3.org/1999/xhtml"; xmlns:f="
> > > > http://java.sun.com/jsf/core"; xmlns:h="http://java.sun.com/jsf/html
> ">
> > > > <head>
> > > > <link href="tablecloth/tablecloth.css" rel="stylesheet"
> type="text/css"
> > > > media="screen" />
> > > > <script language="JavaScript" src="tablecloth/tablecloth.js"
> > > > type="text/javascript"></script>
> > > >
> > > > <sx:head/>
> > > >
> > > > </head>
> > > > <body>
> > > >
> > > > <table>
> > > >      <tr>
> > > >          <th><s:text name="Title"/></th>
> > > >         <th><s:text name="Author"/></th>
> > > >         <th><s:text name="Ending"/></th>
> > > >         <th><s:text name="Energy"/></th>
> > > >         <th><s:text name="Flatness"/></th>
> > > >         <th><s:text name="Validate"/></th>
> > > >         <th><s:text name="Play"/></th>
> > > >     </tr>
> > > >
> > > >       <s:iterator value="songs" status="rowstatus">
> > > >         <tr>
> > > >           <td ><s:property
> value="songs[#rowstatus.index].title"/></td>
> > > >           <td >
> > > >               <s:property value="songs[#rowstatus.index].author"/>
> > > >           </td>
> > > >          <s:hidden name = "songs[%{#rowstatus.index}].id">
> > > >          </s:hidden>
> > > >         </tr>
> > > >
> > > >     </s:iterator>
> > > >
> > > > </table>
> > > >
> > > > </body>
> > > >
> > > > </html>
> > > >
> > > > and I would like to call the Javascript function:
> > > > window.onload = tablecloth;
> > > >
> > > >
> > > > 2009/11/8 Martin Gainty <mgai...@hotmail.com>
> > > >
> > > > >
> > > > > then the href should call the javascript function instead of the
> > > supplied
> > > > > URL
> > > > > please post the complete jsp (with the javascript function you want
> to
> > > > > call)
> > > > >
> > > > > Martin Gainty
> > > > > ______________________________________________
> > > > > Verzicht und Vertraulichkeitanmerkung/Note de déni et de
> > > confidentialité
> > > > >
> > > > > Diese Nachricht ist vertraulich. Sollten Sie nicht der vorgesehene
> > > > > Empfaenger sein, so bitten wir hoeflich um eine Mitteilung. Jede
> > > unbefugte
> > > > > Weiterleitung oder Fertigung einer Kopie ist unzulaessig. Diese
> > > Nachricht
> > > > > dient lediglich dem Austausch von Informationen und entfaltet keine
> > > > > rechtliche Bindungswirkung. Aufgrund der leichten Manipulierbarkeit
> von
> > > > > E-Mails koennen wir keine Haftung fuer den Inhalt uebernehmen.
> > > > > Ce message est confidentiel et peut être privilégié. Si vous n'êtes
> pas
> > > le
> > > > > destinataire prévu, nous te demandons avec bonté que pour
> satisfaire
> > > > > informez l'expéditeur. N'importe quelle diffusion non autorisée ou
> la
> > > copie
> > > > > de ceci est interdite. Ce message sert à l'information seulement et
> > > n'aura
> > > > > pas n'importe quel effet légalement obligatoire. Étant donné que
> les
> > > email
> > > > > peuvent facilement être sujets à la manipulation, nous ne pouvons
> > > accepter
> > > > > aucune responsabilité pour le contenu fourni.
> > > > >
> > > > >
> > > > >
> > > > >
> > > > > > Date: Sun, 8 Nov 2009 17:37:19 +0100
> > > > > > Subject: Re: sx:div and executeScript
> > > > > > From: irenezel...@gmail.com
> > > > > > To: user@struts.apache.org
> > > > > >
> > > > > > I'm using <sx:head/>. Not theme="ajax", I think the last version
> does
> > > not
> > > > > > support this theme. The href attribute points a working url,
> however
> > > > > > Javascript is not executed when the ajax url is loaded.
> > > > > >
> > > > > > 2009/11/8 Martin Gainty <mgai...@hotmail.com>
> > > > > >
> > > > > > >
> > > > > > > assuming theme="ajax"
> > > > > > > then the div href would be
> > > > > > >
> > > > > > > href
> > > > > > >                                        false
> > > > > > >
> > > > > > >
> > > > > > >                                        false
> > > > > > >                                        String
> > > > > > >                                        The URL to call to
> obtain
> > > the
> > > > > > > content. Note: If used with ajax context, the value must be set
> as
> > > an
> > > > > url
> > > > > > > tag value.
> > > > > > > make sure your href attribute points a working url such as what
> is
> > > > > > > illustrated here
> > > > > > > http://struts.apache.org/2.1.8/docs/ajax-div-template.html
> > > > > > >
> > > > > > > Martin Gainty
> > > > > > > ______________________________________________
> > > > > > > Verzicht und Vertraulichkeitanmerkung/Note de déni et de
> > > > > confidentialité
> > > > > > >
> > > > > > > Diese Nachricht ist vertraulich. Sollten Sie nicht der
> vorgesehene
> > > > > > > Empfaenger sein, so bitten wir hoeflich um eine Mitteilung.
> Jede
> > > > > unbefugte
> > > > > > > Weiterleitung oder Fertigung einer Kopie ist unzulaessig. Diese
> > > > > Nachricht
> > > > > > > dient lediglich dem Austausch von Informationen und entfaltet
> keine
> > > > > > > rechtliche Bindungswirkung. Aufgrund der leichten
> Manipulierbarkeit
> > > von
> > > > > > > E-Mails koennen wir keine Haftung fuer den Inhalt uebernehmen.
> > > > > > > Ce message est confidentiel et peut être privilégié. Si vous
> n'êtes
> > > pas
> > > > > le
> > > > > > > destinataire prévu, nous te demandons avec bonté que pour
> > > satisfaire
> > > > > > > informez l'expéditeur. N'importe quelle diffusion non autorisée
> ou
> > > la
> > > > > copie
> > > > > > > de ceci est interdite. Ce message sert à l'information
> seulement et
> > > > > n'aura
> > > > > > > pas n'importe quel effet légalement obligatoire. Étant donné
> que
> > > les
> > > > > email
> > > > > > > peuvent facilement être sujets à la manipulation, nous ne
> pouvons
> > > > > accepter
> > > > > > > aucune responsabilité pour le contenu fourni.
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > > Date: Sat, 7 Nov 2009 17:44:28 +0100
> > > > > > > > Subject: sx:div and executeScript
> > > > > > > > From: irenezel...@gmail.com
> > > > > > > > To: user@struts.apache.org
> > > > > > > >
> > > > > > > > Hi,
> > > > > > > >
> > > > > > > > I'm using sx:div for loading a content after the page is
> loaded.
> > > > > > > > But, I have problems because Javascript is not working in the
> > > page
> > > > > linked
> > > > > > > by
> > > > > > > > <sx:div ..>. I read about a solution with Struts2.1.2 (I'm
> using
> > > > > > > > Struts2.1.8) in this page(
> > > > > > > >
> > > > > > >
> > > > >
> > >
> http://mail-archives.apache.org/mod_mbox/struts-issues/200808.mbox/%3c2107922214.1217595186486.javamail.j...@brutus%3e
> > > > > > > ,
> > > > > > > > but it did not work for me.
> > > > > > > > I'm using this code:
> > > > > > > > <sx:div id="tableScroll"label="table" href="%{#table}"
> > > > > > > > separateScripts="false" executeScripts="true">
> > > > > > > >                     Carregant'se
> > > > > > > >  </sx:div>
> > > > > > > > and the returned code is a populated table.
> > > > > > > > I changed the jar struts2-dojo-plugin-2.1.8.jar, how the
> thread
> > > > > > > indicates,
> > > > > > > > but nothing changed.
> > > > > > > > I need Javacript in the returned content. Please, I need
> help.
> > > > > > > >
> > > > > > > >
> > > > > > > > Thanks in advance,
> > > > > > > >
> > > > > > > > Irene
> > > > > > >
> > > > > > >
> _________________________________________________________________
> > > > > > > Find the right PC with Windows 7 and Windows Live.
> > > > > > >
> > > > > > >
> > > > >
> > >
> http://www.microsoft.com/Windows/pc-scout/laptop-set-criteria.aspx?cbid=wl&filt=200,2400,10,19,1,3,1,7,50,650,2,12,0,1000&cat=1,2,3,4,5,6&brands=5,6,7,8,9,10,11,12,13,14,15,16&addf=4,5,9&ocid=PID24727::T:WLMTAGL:ON:WL:en-US:WWL_WIN_evergreen2:112009
> > > > > > >
> > > > >
> > > > > _________________________________________________________________
> > > > > Hotmail: Trusted email with Microsoft's powerful SPAM protection.
> > > > > http://clk.atdmt.com/GBL/go/177141664/direct/01/
> > > > > http://clk.atdmt.com/GBL/go/177141664/direct/01/
> > > > >
> > >
> > > _________________________________________________________________
> > > Hotmail: Trusted email with Microsoft's powerful SPAM protection.
> > > http://clk.atdmt.com/GBL/go/177141664/direct/01/
> > > http://clk.atdmt.com/GBL/go/177141664/direct/01/
> > >
>
> _________________________________________________________________
> Hotmail: Trusted email with powerful SPAM protection.
> http://clk.atdmt.com/GBL/go/177141665/direct/01/
>

Reply via email to