Side navigation
#12302 closed bug (invalid)
Opened August 15, 2012 05:59AM UTC
Closed August 15, 2012 09:40AM UTC
Error on attempting to call a .val() or .attr() method on <option>
Reported by: | i@desk-it.ru | Owned by: | |
---|---|---|---|
Priority: | low | Milestone: | None |
Component: | attributes | Version: | 1.8.0 |
Keywords: | Cc: | ||
Blocked by: | Blocking: |
Description
I'm not sure if this is truly a bug, but common sense tells me an <option> element should have a .val() method.
code sample:
$('[name="attr/ca_internal:string:ignore_empty"]').children().each(function() { console.log(this.val()); // console.log(this.attr('value')); $(this).css( {"background-color":"Black", "color":"White"} ); });
Selectors matches a <select> element, then need to process each option value to define a corresponding style.
Uncaught TypeError: Object #<HTMLOptionElement> has no method 'val'
and trying to bypass .val() call by using .attr('value') method gives this:
Uncaught TypeError: Object #<HTMLOptionElement> has no method 'attr'
Sorry, jsfiddle is messed up by our corporate firewall (results in uneditable and unseen [HTML] field), so i have to post an example to jsbin: http://jsbin.com/adabol/1/edit
oops, sorry.. my fault...
in .val() selector should have been '$(this)' not 'this' object..
need to get more sleep