Ticket #10118: 0004-Do-not-serialize-input-elements-with-file-type.-Clos.patch
| File 0004-Do-not-serialize-input-elements-with-file-type.-Clos.patch, 1.8 kB (added by kangax, 3 months ago) |
|---|
-
a/src/form.js
old new 12 12 var data = elements.inject({ }, function(result, element) { 13 13 if (!element.disabled && element.name) { 14 14 key = element.name; value = $(element).getValue(); 15 if (value != null && (element.type != 'submit' || (!submitted &&15 if (value != null && element.type != 'file' && (element.type != 'submit' || (!submitted && 16 16 submit !== false && (!submit || key == submit) && (submitted = true)))) { 17 17 if (key in result) { 18 18 // a key is already present; construct an array of values -
a/test/unit/form.html
old new 120 120 <input type="submit" id="ffe_ti2_submit" tabindex="1" /> 121 121 </form> 122 122 123 <form id="form_with_file_input"> 124 <input type="file" name="file_name" value="foo" /> 125 </form> 126 123 127 </div> 124 128 125 129 <!-- Tests follow --> … … 399 403 $('form').serialize({ submit: false })); 400 404 this.assertHashEqual({ val1:4, action:'blah' }, 401 405 $('form').serialize({ submit: 'inexistent' })); 402 406 407 // file input should not be serialized 408 this.assertEqual('', $('form_with_file_input').serialize()); 403 409 }, 404 410 405 411 testFormMethodsOnExtendedElements: function() {