Re: Validation failing in IE6/7

2009-11-25 Thread Andrew Miller
Hello again,

I'm extremely happy to close this one off. I _finally_ found the source
of the problem today.

As it turns out, the lightbox solution I was using was including its own
version of effects.js which was quite old - and conflicting with the one
already provided by Tapestry.

Once I removed it, everything started working perfectly.

Drew

On Mon, 2009-11-23 at 16:42 +, Andrew Miller wrote:
> I've taken a look and it's definitely within a form element. The problem
> appears to be that tapestry.js isn't adding that function to the
> element, IE6/7 complains thus:
> 
>   Error: Object doesn't support this property or method
> 
> Interestingly, IE8 was making the exact same complaint until I upgraded
> Prototype to the latest version - now it works perfectly. This seems to
> suggest it's a problem (or some sort of conflict) with Prototype, but
> I'm still at a complete loss as to why.
> 
> Drew
> 
> On Mon, 2009-11-23 at 05:16 -0800, Howard Lewis Ship wrote:
> > That seems very odd, as Tapestry (i.e., tapestry.js) will create the
> > Tapestry.FormEventManager object if it does not already exist. Could
> > it be because the field in question is not contained within a form?
> > 
> > On Mon, Nov 23, 2009 at 4:45 AM, Andrew Miller  
> > wrote:
> > > I've done a bit more digging on this and I made a mistake in my original
> > > assumption:
> > >
> > >> The failure occurs during the Tapestry.init function. I've traced the
> > >> javascript execution through and I've found the exact line it's failing
> > >> on - during the call to the Tapestry.Initializer.validate function, it's
> > >> failing on this line:
> > >>
> > >>   $(field.form).getFormEventManager();
> > >>
> > >> and stepping through the function it's specifically failing within the
> > >> $() call! In prototype.js, when it comes to returning the extended
> > >> element (last line of the $() function):
> > >>
> > >>   return Element.extend(element);
> > >>
> > >> it fails and goes to the try/catch statement of Enumerable.each.
> > >
> > > This isn't where the function is failing - it's actually failing on the
> > > call to getFormEventManager(). I've done some further double- and
> > > triple-checking to make sure I'm right and this time I'm certain.
> > > Apologies for the mistake.
> > >
> > > Can anyone explain why this function wouldn't be available on this
> > > element? I've read through the code and I can't see what would be
> > > stopping these from being added to the element, but as it's only IE6/7
> > > that's failing it could be something I'm completely overlooking.
> > >
> > > Does anyone have any ideas?
> > >
> > > Thanks again,
> > > Drew
> > >
> > > -
> > > To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
> > > For additional commands, e-mail: users-h...@tapestry.apache.org
> > >
> > >
> > 
> > 
> > 
> 
> -
> To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
> For additional commands, e-mail: users-h...@tapestry.apache.org
> 

-
To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
For additional commands, e-mail: users-h...@tapestry.apache.org



Re: Validation failing in IE6/7

2009-11-23 Thread Andrew Miller
I've taken a look and it's definitely within a form element. The problem
appears to be that tapestry.js isn't adding that function to the
element, IE6/7 complains thus:

Error: Object doesn't support this property or method

Interestingly, IE8 was making the exact same complaint until I upgraded
Prototype to the latest version - now it works perfectly. This seems to
suggest it's a problem (or some sort of conflict) with Prototype, but
I'm still at a complete loss as to why.

Drew

On Mon, 2009-11-23 at 05:16 -0800, Howard Lewis Ship wrote:
> That seems very odd, as Tapestry (i.e., tapestry.js) will create the
> Tapestry.FormEventManager object if it does not already exist. Could
> it be because the field in question is not contained within a form?
> 
> On Mon, Nov 23, 2009 at 4:45 AM, Andrew Miller  wrote:
> > I've done a bit more digging on this and I made a mistake in my original
> > assumption:
> >
> >> The failure occurs during the Tapestry.init function. I've traced the
> >> javascript execution through and I've found the exact line it's failing
> >> on - during the call to the Tapestry.Initializer.validate function, it's
> >> failing on this line:
> >>
> >>   $(field.form).getFormEventManager();
> >>
> >> and stepping through the function it's specifically failing within the
> >> $() call! In prototype.js, when it comes to returning the extended
> >> element (last line of the $() function):
> >>
> >>   return Element.extend(element);
> >>
> >> it fails and goes to the try/catch statement of Enumerable.each.
> >
> > This isn't where the function is failing - it's actually failing on the
> > call to getFormEventManager(). I've done some further double- and
> > triple-checking to make sure I'm right and this time I'm certain.
> > Apologies for the mistake.
> >
> > Can anyone explain why this function wouldn't be available on this
> > element? I've read through the code and I can't see what would be
> > stopping these from being added to the element, but as it's only IE6/7
> > that's failing it could be something I'm completely overlooking.
> >
> > Does anyone have any ideas?
> >
> > Thanks again,
> > Drew
> >
> > -
> > To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
> > For additional commands, e-mail: users-h...@tapestry.apache.org
> >
> >
> 
> 
> 

-
To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
For additional commands, e-mail: users-h...@tapestry.apache.org



Re: Validation failing in IE6/7

2009-11-23 Thread Howard Lewis Ship
That seems very odd, as Tapestry (i.e., tapestry.js) will create the
Tapestry.FormEventManager object if it does not already exist. Could
it be because the field in question is not contained within a form?

On Mon, Nov 23, 2009 at 4:45 AM, Andrew Miller  wrote:
> I've done a bit more digging on this and I made a mistake in my original
> assumption:
>
>> The failure occurs during the Tapestry.init function. I've traced the
>> javascript execution through and I've found the exact line it's failing
>> on - during the call to the Tapestry.Initializer.validate function, it's
>> failing on this line:
>>
>>       $(field.form).getFormEventManager();
>>
>> and stepping through the function it's specifically failing within the
>> $() call! In prototype.js, when it comes to returning the extended
>> element (last line of the $() function):
>>
>>       return Element.extend(element);
>>
>> it fails and goes to the try/catch statement of Enumerable.each.
>
> This isn't where the function is failing - it's actually failing on the
> call to getFormEventManager(). I've done some further double- and
> triple-checking to make sure I'm right and this time I'm certain.
> Apologies for the mistake.
>
> Can anyone explain why this function wouldn't be available on this
> element? I've read through the code and I can't see what would be
> stopping these from being added to the element, but as it's only IE6/7
> that's failing it could be something I'm completely overlooking.
>
> Does anyone have any ideas?
>
> Thanks again,
> Drew
>
> -
> To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
> For additional commands, e-mail: users-h...@tapestry.apache.org
>
>



-- 
Howard M. Lewis Ship

Creator of Apache Tapestry

The source for Tapestry training, mentoring and support. Contact me to
learn how I can get you up and productive in Tapestry fast!

(971) 678-5210
http://howardlewisship.com

-
To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
For additional commands, e-mail: users-h...@tapestry.apache.org



Re: Validation failing in IE6/7

2009-11-23 Thread Andrew Miller
I've done a bit more digging on this and I made a mistake in my original
assumption:

> The failure occurs during the Tapestry.init function. I've traced the
> javascript execution through and I've found the exact line it's failing
> on - during the call to the Tapestry.Initializer.validate function, it's
> failing on this line:
> 
>   $(field.form).getFormEventManager();
> 
> and stepping through the function it's specifically failing within the
> $() call! In prototype.js, when it comes to returning the extended
> element (last line of the $() function):
> 
>   return Element.extend(element);
> 
> it fails and goes to the try/catch statement of Enumerable.each.

This isn't where the function is failing - it's actually failing on the
call to getFormEventManager(). I've done some further double- and
triple-checking to make sure I'm right and this time I'm certain.
Apologies for the mistake.

Can anyone explain why this function wouldn't be available on this
element? I've read through the code and I can't see what would be
stopping these from being added to the element, but as it's only IE6/7
that's failing it could be something I'm completely overlooking.

Does anyone have any ideas?

Thanks again,
Drew

-
To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
For additional commands, e-mail: users-h...@tapestry.apache.org