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:
7dd4561
)
Added local timeout option for $.ajax + test
author
Jörn Zaefferer
<joern.zaefferer@gmail.com>
Sun, 1 Oct 2006 14:15:56 +0000
(14:15 +0000)
committer
Jörn Zaefferer
<joern.zaefferer@gmail.com>
Sun, 1 Oct 2006 14:15:56 +0000
(14:15 +0000)
src/ajax/ajax.js
patch
|
blob
|
history
diff --git
a/src/ajax/ajax.js
b/src/ajax/ajax.js
index
07d69b4
..
cca2074
100644
(file)
--- a/
src/ajax/ajax.js
+++ b/
src/ajax/ajax.js
@@
-476,6
+476,7
@@
jQuery.extend({
* if(passed == 2) {
* ok( true, 'Check local and global callbacks after timeout' );
* clearTimeout(timeout);
* if(passed == 2) {
* ok( true, 'Check local and global callbacks after timeout' );
* clearTimeout(timeout);
+ * $('#main').unbind("ajaxError");
* start();
* }
* };
* start();
* }
* };
@@
-492,6
+493,22
@@
jQuery.extend({
* success: fail
* });
*
* success: fail
* });
*
+ * @test stop(); $.ajaxTimeout(50);
+ * $.ajax({
+ * type: "GET",
+ * timeout: 5000,
+ * url: "data/name.php?wait=1",
+ * error: function() {
+ * ok( false, 'Check for local timeout failed' );
+ * start();
+ * },
+ * success: function() {
+ * ok( true, 'Check for local timeout' );
+ * start();
+ * }
+ * });
+ *
+ *
* @name $.ajaxTimeout
* @type jQuery
* @param Number time How long before an AJAX request times out.
* @name $.ajaxTimeout
* @type jQuery
* @param Number time How long before an AJAX request times out.
@@
-520,6
+537,10
@@
jQuery.extend({
* (String) dataType - The type of data that you're expecting back from
* the server (e.g. "xml", "html", "script", or "json").
*
* (String) dataType - The type of data that you're expecting back from
* the server (e.g. "xml", "html", "script", or "json").
*
+ * (Number) timeout - Local timeout to override global timeout, eg. to give a
+ * single request a longer timeout while all others timeout after 1 seconds,
+ * see $.ajaxTimeout
+ *
* (Boolean) global - Wheather to trigger global AJAX event handlers for
* this request, default is true. Set to true to prevent that global handlers
* like ajaxStart or ajaxStop are triggered.
* (Boolean) global - Wheather to trigger global AJAX event handlers for
* this request, default is true. Set to true to prevent that global handlers
* like ajaxStart or ajaxStop are triggered.
@@
-588,6
+609,7
@@
jQuery.extend({
var error = type.error;
var dataType = type.dataType;
var global = typeof type.global == "boolean" ? type.global : true;
var error = type.error;
var dataType = type.dataType;
var global = typeof type.global == "boolean" ? type.global : true;
+ var timeout = typeof type.timeout == "number" ? type.timeout : jQuery.timeout;
data = type.data;
url = type.url;
type = type.type;
data = type.data;
url = type.url;
type = type.type;
@@
-674,7
+696,7
@@
jQuery.extend({
xml.onreadystatechange = onreadystatechange;
// Timeout checker
xml.onreadystatechange = onreadystatechange;
// Timeout checker
- if(jQuery.timeout > 0)
+ if(timeout > 0)
setTimeout(function(){
// Check to see if the request is still happening
if (xml) {
setTimeout(function(){
// Check to see if the request is still happening
if (xml) {
@@
-686,7
+708,7
@@
jQuery.extend({
// Clear from memory
xml = null;
}
// Clear from memory
xml = null;
}
- }, jQuery.timeout);
+ }, timeout);
// Send the data
xml.send(data);
// Send the data
xml.send(data);