Well, your W3C specifications none the less, when you get a <select> element by a jQuery selector, you have a wrapper around the <select> (ie/ parent) element itself, and as you are finding out, "length" (http://docs.jquery.com/Core/length) or it's equivalent "size" will return 1 because that's all it has in the collection
you have to select it's children like $("select option") or (probably slower) $("select").find("option") and then the "length" will be what you are expecting