git.asbjorn.biz
/
jquery.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
31f22f2
)
jquery ajax: caching repetive conversions/checks for settings.type in $.ajax.
author
Ariel Flesler
<aflesler@gmail.com>
Thu, 15 May 2008 14:16:19 +0000
(14:16 +0000)
committer
Ariel Flesler
<aflesler@gmail.com>
Thu, 15 May 2008 14:16:19 +0000
(14:16 +0000)
src/ajax.js
patch
|
blob
|
history
diff --git
a/src/ajax.js
b/src/ajax.js
index
1dc7814
..
36b979d
100644
(file)
--- a/
src/ajax.js
+++ b/
src/ajax.js
@@
-165,19
+165,20
@@
jQuery.extend({
lastModified: {},
ajax: function( s ) {
lastModified: {},
ajax: function( s ) {
- var jsonp, jsre = /=\?(&|$)/g, status, data;
-
// Extend the settings, but re-extend 's' so that it can be
// checked again later (in the test suite, specifically)
s = jQuery.extend(true, s, jQuery.extend(true, {}, jQuery.ajaxSettings, s));
// Extend the settings, but re-extend 's' so that it can be
// checked again later (in the test suite, specifically)
s = jQuery.extend(true, s, jQuery.extend(true, {}, jQuery.ajaxSettings, s));
+ var jsonp, jsre = /=\?(&|$)/g, status, data,
+ type = s.type.toUpperCase();
+
// convert data if not already a string
if ( s.data && s.processData && typeof s.data != "string" )
s.data = jQuery.param(s.data);
// Handle JSONP Parameter Callbacks
if ( s.dataType == "jsonp" ) {
// convert data if not already a string
if ( s.data && s.processData && typeof s.data != "string" )
s.data = jQuery.param(s.data);
// Handle JSONP Parameter Callbacks
if ( s.dataType == "jsonp" ) {
- if ( s.type.toLowerCase() == "get" ) {
+ if ( type == "GET" ) {
if ( !s.url.match(jsre) )
s.url += (s.url.match(/\?/) ? "&" : "?") + (s.jsonp || "callback") + "=?";
} else if ( !s.data || !s.data.match(jsre) )
if ( !s.url.match(jsre) )
s.url += (s.url.match(/\?/) ? "&" : "?") + (s.jsonp || "callback") + "=?";
} else if ( !s.data || !s.data.match(jsre) )
@@
-214,7
+215,7
@@
jQuery.extend({
if ( s.dataType == "script" && s.cache == null )
s.cache = false;
if ( s.dataType == "script" && s.cache == null )
s.cache = false;
- if ( s.cache === false && s.type.toLowerCase() == "get" ) {
+ if ( s.cache === false && type == "GET" ) {
var ts = now();
// try replacing _= if it is there
var ret = s.url.replace(/(\?|&)_=.*?(&|$)/, "$1_=" + ts + "$2");
var ts = now();
// try replacing _= if it is there
var ret = s.url.replace(/(\?|&)_=.*?(&|$)/, "$1_=" + ts + "$2");
@@
-223,7
+224,7
@@
jQuery.extend({
}
// If data is available, append data to url for get requests
}
// If data is available, append data to url for get requests
- if ( s.data && s.type.toLowerCase() == "get" ) {
+ if ( s.data && type == "GET" ) {
s.url += (s.url.match(/\?/) ? "&" : "?") + s.data;
// IE likes to send both get and post data, prevent this
s.url += (s.url.match(/\?/) ? "&" : "?") + s.data;
// IE likes to send both get and post data, prevent this
@@
-239,7
+240,7
@@
jQuery.extend({
// If we're requesting a remote document
// and trying to load JSON or Script with a GET
// If we're requesting a remote document
// and trying to load JSON or Script with a GET
- if ( s.dataType == "script" && s.type.toLowerCase() == "get"
+ if ( s.dataType == "script" && type == "GET"
&& remote.test(s.url) && remote.exec(s.url)[1] != location.host ){
var head = document.getElementsByTagName("head")[0];
var script = document.createElement("script");
&& remote.test(s.url) && remote.exec(s.url)[1] != location.host ){
var head = document.getElementsByTagName("head")[0];
var script = document.createElement("script");
@@
-278,9
+279,9
@@
jQuery.extend({
// Open the socket
// Passing null username, generates a login popup on Opera (#2865)
if( s.username )
// Open the socket
// Passing null username, generates a login popup on Opera (#2865)
if( s.username )
- xml.open(s.type, s.url, s.async, s.username, s.password);
+ xml.open(type, s.url, s.async, s.username, s.password);
else
else
- xml.open(s.type, s.url, s.async);
+ xml.open(type, s.url, s.async);
// Need an extra try/catch for cross domain requests in Firefox 3
try {
// Need an extra try/catch for cross domain requests in Firefox 3
try {