Sry that was my bad I forgot to create the class :-) Your way does work
outside of a class, but I need it to work inside a class structure.

I updated and broke your example by adding in a class structure.

 

new Class(

{

    initialize: function()

    {

                new Element('option', 

                {

                                text: 'the text', 

                                value: 0}

                ).inject('test');    

                

                                new Element('option', 

                                {

                                                text: 'the selected text', 

                                                value: 0, selected: true

                                }).inject('test');

 

                                new Element('option', 

                                {

                                                text: 'another text', 

                                                value: 0

                                }).inject('test');

    }

})();

 

I am working with select items more (in pure js) then I ever have for this
project and fining all sorts of isssues.  The latest one I found is on
Google Chrome (may effect other webkit browsers).  If you dynamically
populate a select then do element.getSelected() immediately, Google Chrome
reports nothing, while FF and IE have no trouble returning the first item in
the options array.  I can get around these issues but it really cramping my
development flow, maybe I should just finish the app with asp.net and do the
logic on the server.

 

 

From: [email protected]
[mailto:[email protected]] On Behalf Of Thierry bela nanga
Sent: Friday, February 26, 2010 4:24 PM
To: [email protected]
Subject: Re: [Moo] Removing items from a select box

 

your example fixed

http://mootools.net/shell/aAJWE/3/

http://mootools.net/shell/qxZHE/2/



2010/2/26 Fábio M. Costa <[email protected]>

it looks like mooshell is throwing some errors :S


--
Fábio Miranda Costa
Solucione Sistemas
Engenheiro de interfaces



On Fri, Feb 26, 2010 at 5:37 PM, Matthew Hazlett <[email protected]> wrote:

Yes, it fails with the moo error of:

setting a property that has only a getter
http://mootools.net/shell/js/lib/mootools-1.2.4-core-nc.js       Line 1180

 

Your way:

http://mootools.net/shell/Dcm48/

 

This also fails, but should work:

http://mootools.net/shell/aAJWE/2/

 

 

From: [email protected]
[mailto:[email protected]] On Behalf Of Fábio M. Costa
Sent: Friday, February 26, 2010 12:39 PM


To: [email protected]
Subject: Re: [Moo] Removing items from a select box

 

$('ddArtists').adopt(new Element('option', {'html': itm.Text, 'value':
item.Value});

 

doesnt work?


--
Fábio Miranda Costa
Solucione Sistemas
Engenheiro de interfaces

On Fri, Feb 26, 2010 at 2:06 PM, Thierry bela nanga <[email protected]>
wrote:

this works in IE

 

http://mootools.net/shell/qxZHE/

 

On Fri, Feb 26, 2010 at 5:53 PM, Matthew Hazlett <[email protected]> wrote:

Thanks!

 

But this dosn't work in IE:

$('ddArtists').adopt(new Option(itm.Text, itm.Value));

 

 

 

From: [email protected]
[mailto:[email protected]] On Behalf Of Thierry bela nanga
Sent: Friday, February 26, 2010 11:42 AM
To: [email protected]
Subject: Re: [Moo] Removing items from a select box

 

select.empty(); //remove all options

 

select.adopt(new Option(itm.Text, itm.Value)) //add an option

 

 

 

On Fri, Feb 26, 2010 at 5:33 PM, hazlema <[email protected]> wrote:

Is there a mooish way to remove all items from a select?
This is what I have while it works its not very elegant

Element.implement({
   removeOptions: function () {
       for (var count = this.options.length - 1; count >= 0; count--)
{
           this.removeChild(this.options[count]);
       }
   }
});

Same problem with adding:

   data.each(function (itm) {
       try {
           $('ddArtists').add(new Option(itm.Text, itm.Value),
null);  // Everything else
       }
       catch (ex) {
           $('ddArtists').add(new Option(itm.Text, itm.Value));  //
IE (Maybe others)
       }
   });
}




-- 
http://tbela99.blogspot.com/

fax : (+33) 08 26 51 94 51




-- 
http://tbela99.blogspot.com/

fax : (+33) 08 26 51 94 51

 

 




-- 
http://tbela99.blogspot.com/

fax : (+33) 08 26 51 94 51

Reply via email to