Test Case Boilerplate
Fork this way...
HTML
<div>
<a rel="AjaxElement" href="javascript:void(0);">I cause 2 alerts</a>
<input rel="AjaxElement" type="submit" value="I cause 3 alerts" />
<input id="alix" type="button" value="Show How Many Results We Have" />
</div>
JavaScript
/*
With regard to jQuery Documentation(:enabled) on (http://api.jquery.com/enabled-selector/) it describes:
".... In other words, the bare $(':enabled') is equivalent to $('*:enabled'), so $('input:enabled') should be used instead. .... "
This problem makes logical mistake in the programmer's mind and causes extremely hidden bugs
*/
var $a = $('[rel*="AjaxElement"]:enabled').live('click', function(e) {
alert('Using :enabled');
return false;
})
var $b = $("[rel*='AjaxElement']:not([disabled])").live('click', function() {
alert('Using :not([disabled])');
return false;
})
var $c = $("[rel*='AjaxElement']:not(:disabled)").live('click', function() {
alert('Using :not(:disabled)');
return false;
})
$('#alix').click(function() {
alert('$a.length:' + $a.length + '\n$b.length:' + $b.length + '\n$c.length:' + $c.length)
});