works in IE6 but not in FF3... thats the problem. these stuff used to work
fine in 1.2.6 but since 1.3.2 jquery is not handling 'readonly' properly
anymore. guess this got messed up in the process of removing all the browser
sniffing from jquery...

at least i have a working woraround now :-)

thanks and take care
Gerald



MorningZ wrote:
> 
> 
> also to note
> 
> $("input[readonly]") should also work as that sector says "give me all
> inputs that have the attribute read only", and it doesn't matter what
> the value is, just that it's there
> 
> 
> On Mar 13, 4:00 am, ggerri <gerald.ressm...@ewz.ch> wrote:
>> Thanks a lot Ricardo :handshake:
>>
>> That both worked =)
>>
>> But I have to admit that I dont know why .readOnly works.:confused:
>> couldnt
>> find anything like that in the docs and thought that you always have to
>> select attributes with [..] or .attr(..) Is this an officially working
>> function?
>>
>> Thanks :-)
>> Gerald
>>
>>
>>
>> ricardobeat wrote:
>>
>> > You're returning the object you created, so that will always be true.
>> > Return the .length property and it shoud work:
>>
>> > $.extend($.expr[':'],{
>> >     readonly: function(a) {
>> >         return !!$(a).filter('[readonly="true"],
>> > [readonly=""]').length;
>> >     }
>> > });
>>
>> > But a simpler/faster/safer alternative is the DOM property 'readOnly',
>> > which seems to work fine on all major browsers:
>>
>> > $.extend($.expr[':'],{
>> >     readonly: function(a) {
>> >         return !!a.readOnly;
>> >     }
>> > });
>>
>> > You have to use !! to enforce returning a boolean value.
>>
>> > cheers,
>> > - ricardo
>> > On Mar 12, 9:30 am, ggerri <gerald.ressm...@ewz.ch> wrote:
>> >> Hi there
>> >> jQuery 1.3 has problems with handling the readonly attribute (already
>> >> filed
>> >> a ticket but I'm a bit stuck here with my project).  
>>
>> >> When you want to select  readonly inputs, you have to use
>> [readonly=""]
>> >> in
>> >> Firefox and [readonly="true"] in IE6...
>>
>> >> ( because the DOM looks like that after
>> ".attr('readonly','readonly');":
>> >>  FF: <input id="A1" type="text" value="90" readonly=""/>
>> >>  IE6: <INPUT id="A1" readOnly=True> )
>>
>> >> So I tried to extend :
>>
>> >> $.extend($.expr[':'],{ readonly: function(a) {
>> >>                                 return $(a).filter('[readonly="true"],
>> >> [readonly=""]');
>> >>                                                                      
>>    
>> >>                             }
>> >>                                               });
>>
>> >> But:
>>
>> >>  $(':text:readonly').addClass('gtest');
>>
>> >> doesnt care about the custom selector and just choses all :text
>> fields.
>> >> :,(
>>
>> >> what's wrong with my extendtion? :confused:
>>
>> >> thanks a lot guys:handshake:
>> >> Gerald
>>
>> >> ps.  $(':text').not("[readonly='true'], [readonly=''],
>> >> [readonly='readonly']") works fine in both browsers selecting all
>> input
>> >> fields which are not readonly but using a working :readonly would be
>> more
>> >> elegant right?
>>
>> >> --
>> >> View this message in
>> >>
>> context:http://www.nabble.com/whats-wrong-with-my-custom-selector-%3Areadonly...
>> >> Sent from the jQuery General Discussion mailing list archive at
>> >> Nabble.com.
>>
>> --
>> View this message in
>> context:http://www.nabble.com/whats-wrong-with-my-custom-selector-%3Areadonly...
>> Sent from the jQuery General Discussion mailing list archive at
>> Nabble.com.
> 
> 

-- 
View this message in context: 
http://www.nabble.com/whats-wrong-with-my-custom-selector-%3Areadonly-%28IE6-sucks%29-tp22475325s27240p22497444.html
Sent from the jQuery General Discussion mailing list archive at Nabble.com.

Reply via email to