| 120 | // that takes "flat" options (not to be deep extended) |
| 121 | // Fixes #9887 |
| 122 | function ajaxExtend( target, src ) { |
| 123 | var key, deep, |
| 124 | flatOptions = jQuery.ajaxSettings.flatOptions || {}; |
| 125 | |
| 126 | for ( key in src ) { |
| 127 | if ( src[ key ] !== undefined ) { |
| 128 | ( flatOptions[ key ] ? target : ( deep || (deep = {}) ) )[ key ] = src[ key ]; |
| 129 | } |
| 130 | } |
| 131 | if ( deep ) { |
| 132 | jQuery.extend( true, target, deep ); |
| 133 | } |
| 134 | |
| 135 | return target; |
| 136 | } |
| 137 | |
| 138 | /* Handles responses to an ajax request: |
| 139 | * - finds the right dataType (mediates between content-type and expected dataType) |