TJ,

Thank you for taking the time to look at this. I can't get it to work
in IE7. Your test confirms to me that there isn't a problem with my
logic, so I'll take another look at the IDs being used.


On May 20, 12:34 am, "T.J. Crowder" <[EMAIL PROTECTED]> wrote:
> Hi,
>
> FWIW, the fixed version in your follow-up post works fine on Windows
> XP in the browsers I've tried it in:  FF2, IE6, Safari 3, Opera 9.
> Most likely an issue with the string you're feeding in or the IDs of
> the areas.  My test string was:
>
> "area1,test1.jsp,x=1,area2,test2.jsp,x=2,area3,test3.jsp,x=3"
>
> ...and the JSPs were along these lines:
>
> <%
>     out.println("test1: x = " + request.getParameter("x"));
> %>
>
> ...with these "areas" in my HTML page:
>
> <div id='area1'>area1</div>
> <div id='area2'>area2</div>
> <div id='area3'>area3</div>
>
> All three areas updated correctly.
> --
> T.J. Crowder
> tj / crowder software / com
>
> On May 19, 9:06 pm, adrianc <[EMAIL PROTECTED]> wrote:
>
> > Darrin,
>
> > Thanks for pointing that out. The loop was correct originally, but it
> > got mangled during debugging. The corrected code is:
>
> > /** Update multiple areas (HTML container elements).
> >   * @param areaCsvString The area CSV string. The CSV string is a flat
> > array in the
> >   * form of: areaId, target, target parameters [, areaId, target,
> > target parameters...].
> > */
> > function ajaxUpdateAreas(areaCsvString) {
> >     var areaArray = areaCsvString.split(",");
> >     var numAreas = parseInt(areaArray.length / 3);
> >     for (var i = 0; i < numAreas * 3; i = i + 3) {
> >         new Ajax.Updater(areaArray[i], areaArray[i + 1], {parameters:
> > areaArray[i + 2]});
> >     }
>
> > }
>
> > It still doesn't work in IE.
>
> > On May 19, 12:43 pm, darrin <[EMAIL PROTECTED]> wrote:
>
> > > I can't bring myself to tell you what's wrong (hint: it's not
> > > prototype), but try some simple debugging, like putting an
> > > alert('here') before/after the Ajax.Updater call, to make sure your
> > > *loop* is actually working as you expect it to.
>
> > > On May 19, 11:53 am, adrianc <[EMAIL PROTECTED]> wrote:
>
> > > > I apologize if my question duplicates something asked before. I'm new
> > > > to JS programming and a search of this group didn't provide an answer.
>
> > > > I'm trying to interface an existing application framework to
> > > > Prototype. I have a small set of JS functions the framework calls to
> > > > use the Prototype library.
>
> > > > One of the functions creates multiple instances of Ajax.Updater when a
> > > > form is submitted. Only the first Ajax.Updater works, the rest don't
> > > > do anything. Here is the code:
>
> > > > /** Update multiple areas (HTML container elements).
> > > >   * @param areaCsvString The area CSV string. The CSV string is a flat
> > > > array in the
> > > >   * form of: areaId, target, target parameters [, areaId, target,
> > > > target parameters...].
> > > > */
> > > > function ajaxUpdateAreas(areaCsvString) {
> > > >     var areaArray = areaCsvString.split(",");
> > > >     var numAreas = parseInt(areaArray.length / 3);
> > > >     for (var i = 0; i < numAreas; i = i + 3) {
> > > >         new Ajax.Updater(areaArray[i], areaArray[i + 1], {parameters:
> > > > areaArray[i + 2]});
> > > >     }
>
> > > > }
>
> > > > I thought maybe the Ajax.Updater instances were erasing each other, so
> > > > I put them in array elements - but that didn't fix the problem.
>
> > > > I have confirmed the string argument passed to the function is
> > > > correct. I have confirmed each Ajax.Updater instance works
> > > > individually.
>
> > > > Any ideas?
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Spinoffs" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/rubyonrails-spinoffs?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to