mirror of
https://github.com/jquery/jquery.git
synced 2024-11-23 02:54:22 +00:00
Fix setting value attributes on option elements. Fixes #9071.
This commit is contained in:
parent
6d2fd57f45
commit
4ac2fdda2c
@ -199,7 +199,7 @@ jQuery.fn.extend({
|
||||
hooks = jQuery.valHooks[ this.nodeName.toLowerCase() ] || jQuery.valHooks[ this.type ];
|
||||
|
||||
// If set returns undefined, fall back to normal setting
|
||||
if ( !hooks || ("set" in hooks && hooks.set( this, val, "value" ) === undefined) ) {
|
||||
if ( !hooks || !("set" in hooks) || hooks.set( this, val, "value" ) === undefined ) {
|
||||
this.value = val;
|
||||
}
|
||||
});
|
||||
|
@ -447,7 +447,7 @@ test("removeProp(String)", function() {
|
||||
});
|
||||
|
||||
test("val()", function() {
|
||||
expect(25);
|
||||
expect(26);
|
||||
|
||||
document.getElementById("text1").value = "bla";
|
||||
equals( jQuery("#text1").val(), "bla", "Check for modified value of input element" );
|
||||
@ -513,6 +513,8 @@ test("val()", function() {
|
||||
var $button = jQuery("<button value='foobar'>text</button>").insertAfter("#button");
|
||||
equals( $button.val(), "foobar", "Value retrieval on a button does not return innerHTML" );
|
||||
equals( $button.val("baz").html(), "text", "Setting the value does not change innerHTML" );
|
||||
|
||||
equals( jQuery("<option/>").val("test").attr("value"), "test", "Setting value sets the value attribute" );
|
||||
});
|
||||
|
||||
var testVal = function(valueObj) {
|
||||
|
Loading…
Reference in New Issue
Block a user