Skip to main content

Bug Tracker

Side navigation

#8468 closed bug (wontfix)

Opened March 08, 2011 08:11AM UTC

Closed June 06, 2011 06:07PM UTC

Last modified December 01, 2011 09:05AM UTC

Find by multiple selector return different value in Opera

Reported by: anonymous Owned by: anonymous
Priority: low Milestone: 1.7
Component: selector Version: 1.5.1
Keywords: Cc:
Blocked by: Blocking:
Description

Requirements in html:

1. element input with class 'vdata' doesn't exists in html

2. element select with class 'vdata' exists in html

Query:

jQuery(this).find("input.vdata,select.vdata :selected").val();

query return 'undefined' in Opera

in IE 8, Chrome 9.0.597.107 and Firefox 3.6.13 return selected value in element 'select'

Attachments (0)
Change History (26)

Changed March 08, 2011 02:54PM UTC by dmethvin comment:1

owner: → anonymous
status: newpending

Hi, can you please post a test case built using jsfiddle.net? The code snippet you provided isn't enough since it's not even clear what "this" is.

Changed March 08, 2011 04:04PM UTC by anonymous comment:2

status: pendingnew

I simplify test case...

http://jsfiddle.net/PKCG7/

Changed March 09, 2011 02:18AM UTC by dmethvin comment:3

status: newopen

Confirmed in Opera 11.01 on Windows; I simplified the test case a bit and tried a few permutations:

http://jsfiddle.net/PKCG7/2/

Changed March 10, 2011 03:34PM UTC by dmethvin comment:4

component: unfiledselector
milestone: 1.next1.6
priority: undecidedhigh

Changed March 10, 2011 03:35PM UTC by dmethvin comment:5

#8491 is a duplicate of this ticket.

Changed March 10, 2011 07:30PM UTC by dmethvin comment:6

keywords: → browser-opera

Changed April 17, 2011 09:23PM UTC by john comment:7

status: openpending

I think this may have been fixed in Opera 11.1. Can you confirm?

Changed April 17, 2011 09:34PM UTC by timmywil comment:8

status: pendingopen

Changed April 25, 2011 07:27PM UTC by john comment:9

milestone: 1.61.next

Changed May 12, 2011 01:43AM UTC by scottgonzalez comment:10

Why is this not higher priority? Having simple selectors fail seems like a blocker.

Changed May 12, 2011 01:44AM UTC by scottgonzalez comment:11

This is the cause for http://bugs.jqueryui.com/ticket/7094

Changed May 22, 2011 07:22PM UTC by john comment:12

priority: highblocker

Changed May 22, 2011 07:27PM UTC by john comment:13

keywords: browser-operabrowser-opera,1.7-discuss

Nominating ticket for 1.7 discussion.

Changed May 22, 2011 09:30PM UTC by rwaldron comment:14

description: Requirements in html: \ 1. element input with class 'vdata' doesn't exists in html \ 2. element select with class 'vdata' exists in html \ \ Query: \ jQuery(this).find("input.vdata,select.vdata :selected").val(); \ \ query return 'undefined' in Opera \ in IE 8, Chrome 9.0.597.107 and Firefox 3.6.13 return selected value in element 'select'Requirements in html:\ 1. element input with class 'vdata' doesn't exists in html\ 2. element select with class 'vdata' exists in html\ \ Query:\ jQuery(this).find("input.vdata,select.vdata :selected").val();\ \ query return 'undefined' in Opera\ in IE 8, Chrome 9.0.597.107 and Firefox 3.6.13 return selected value in element 'select'

+1, Seems like a bug, should be fixed

Changed May 23, 2011 12:31AM UTC by jaubourg comment:15

+1, weird

Changed May 23, 2011 04:18AM UTC by timmywil comment:16

+1,

Changed May 23, 2011 04:52PM UTC by gnarf comment:17

description: Requirements in html:\ 1. element input with class 'vdata' doesn't exists in html\ 2. element select with class 'vdata' exists in html\ \ Query:\ jQuery(this).find("input.vdata,select.vdata :selected").val();\ \ query return 'undefined' in Opera\ in IE 8, Chrome 9.0.597.107 and Firefox 3.6.13 return selected value in element 'select'Requirements in html: \ 1. element input with class 'vdata' doesn't exists in html \ 2. element select with class 'vdata' exists in html \ \ Query: \ jQuery(this).find("input.vdata,select.vdata :selected").val(); \ \ query return 'undefined' in Opera \ in IE 8, Chrome 9.0.597.107 and Firefox 3.6.13 return selected value in element 'select'

This seems to be an issue in Opera itself... It isn't throwing an exception for Unknown psuedo class when the non-standard

:selected
is on the right side of the comma...

http://jsfiddle.net/Yxd5P/2/

Changed May 24, 2011 09:16PM UTC by dmethvin comment:18

-1, As discussed in the Monday meeting, this is an Opera bug so I think we should close it wontfix and let the Operatics do their thing.

Changed June 03, 2011 01:48PM UTC by john comment:19

description: Requirements in html: \ 1. element input with class 'vdata' doesn't exists in html \ 2. element select with class 'vdata' exists in html \ \ Query: \ jQuery(this).find("input.vdata,select.vdata :selected").val(); \ \ query return 'undefined' in Opera \ in IE 8, Chrome 9.0.597.107 and Firefox 3.6.13 return selected value in element 'select'Requirements in html:\ 1. element input with class 'vdata' doesn't exists in html\ 2. element select with class 'vdata' exists in html\ \ Query:\ jQuery(this).find("input.vdata,select.vdata :selected").val();\ \ query return 'undefined' in Opera\ in IE 8, Chrome 9.0.597.107 and Firefox 3.6.13 return selected value in element 'select'

+0, I fear what's actually happening here. Opera's querySelectorAll is really bad.

Changed June 03, 2011 03:50PM UTC by scottgonzalez comment:20

description: Requirements in html:\ 1. element input with class 'vdata' doesn't exists in html\ 2. element select with class 'vdata' exists in html\ \ Query:\ jQuery(this).find("input.vdata,select.vdata :selected").val();\ \ query return 'undefined' in Opera\ in IE 8, Chrome 9.0.597.107 and Firefox 3.6.13 return selected value in element 'select'Requirements in html: \ 1. element input with class 'vdata' doesn't exists in html \ 2. element select with class 'vdata' exists in html \ \ Query: \ jQuery(this).find("input.vdata,select.vdata :selected").val(); \ \ query return 'undefined' in Opera \ in IE 8, Chrome 9.0.597.107 and Firefox 3.6.13 return selected value in element 'select'

Replying to [comment:18 dmethvin]:

-1, As discussed in the Monday meeting, this is an Opera bug so I think we should close it wontfix and let the Operatics do their thing.

Isn't one of the main purposes of jQuery to overcome browser bugs?

Changed June 03, 2011 03:51PM UTC by scottgonzalez comment:21

description: Requirements in html: \ 1. element input with class 'vdata' doesn't exists in html \ 2. element select with class 'vdata' exists in html \ \ Query: \ jQuery(this).find("input.vdata,select.vdata :selected").val(); \ \ query return 'undefined' in Opera \ in IE 8, Chrome 9.0.597.107 and Firefox 3.6.13 return selected value in element 'select'Requirements in html:\ 1. element input with class 'vdata' doesn't exists in html\ 2. element select with class 'vdata' exists in html\ \ Query:\ jQuery(this).find("input.vdata,select.vdata :selected").val();\ \ query return 'undefined' in Opera\ in IE 8, Chrome 9.0.597.107 and Firefox 3.6.13 return selected value in element 'select'

+1

Changed June 05, 2011 09:21PM UTC by ajpiano comment:22

description: Requirements in html:\ 1. element input with class 'vdata' doesn't exists in html\ 2. element select with class 'vdata' exists in html\ \ Query:\ jQuery(this).find("input.vdata,select.vdata :selected").val();\ \ query return 'undefined' in Opera\ in IE 8, Chrome 9.0.597.107 and Firefox 3.6.13 return selected value in element 'select'Requirements in html: \ 1. element input with class 'vdata' doesn't exists in html \ 2. element select with class 'vdata' exists in html \ \ Query: \ jQuery(this).find("input.vdata,select.vdata :selected").val(); \ \ query return 'undefined' in Opera \ in IE 8, Chrome 9.0.597.107 and Firefox 3.6.13 return selected value in element 'select'

+0, If this is an opera bug and only affects pseudoselectors, we might have to suck it up. Seems like it could be high cost, low reward...and there could be a fixed Opera, and we know how Opera users are (they love updating).

Changed June 06, 2011 04:51PM UTC by miketaylr comment:23

This was an Opera bug, but it's been fixed in Presto since reported. The problem was "querySelectorAll does not throw for an unsupported pseudo-class part of selector if there is a valid part first."

So, either wait for your users to upgrade to whatever version the fix gets integrated (12? dunno), or don't use custom non-QSA selectors.

Changed June 06, 2011 06:02PM UTC by rwaldron comment:24

keywords: browser-opera,1.7-discuss
milestone: 1.next1.7
priority: blockerlow

Changed June 06, 2011 06:07PM UTC by rwaldron comment:25

resolution: → wontfix
status: openclosed

Changed December 01, 2011 09:05AM UTC by sindresorhus comment:26

#10921 is a duplicate of this ticket.