- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
正如标题已经提到的,有没有办法检查一个变量是否是真正的 jqXHR?
我的意思是(虚构的):
var resource = $.get('/resource');
if (resource instanceof jqXHR)
{
// do something
}
我试图解决的实际问题是针对我正在处理的模态插件。
$('#element').modal({
content : function()
{
return $.get('/resource');
}
});
并且,content
变量可以是string
或function
。如果是 string
,它将是静态的,如果是 function
,它将在每次打开模式时运行。
但是,我希望允许 content
回调返回 jqXHR
或 string
。对于字符串,它非常简单,if (typeof returned === 'string')
,但是 jqXHR
呢?
我知道我可以简单地检查 string
,如果它不是 string
,假设它是 jqXHR
,但我想要我的插件尽可能强大,并禁止使用意外类型。
最佳答案
我建议只检查它是否是一个 promise 对象。这将使您的代码更加健壮,因为如果用户需要执行更复杂的操作,他们可以返回自定义延迟对象,或者他们可以简单地返回 jqXHR 以获得相同的效果。
if ($.type(resource) === "string") {
doStuff(resource);
} elseif (resource && resource.promise) {
resource.promise().done(doStuff);
}
关于javascript - 有什么方法可以检查变量是否是真正的 jqXHR?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14587373/
我使用: var jqXHR = $.ajax(settings); jqXHR.success(function(result){}); jqXHR.error(function(result){}
我将 jquery ajax 对象存储在一个数组中,这样我就可以根据用户触发的事件手动取消调用(如果它没有返回)。这些是我希望运行很长时间的 ajax 调用。 JavaScript var ajaxC
正如标题已经提到的,有没有办法检查一个变量是否是真正的 jqXHR? 我的意思是(虚构的): var resource = $.get('/resource'); if (resource insta
我最近在 jQuery 网站上看到了弃用通知。 Deprecation Notice: The jqXHR.success(), jqXHR.error(), and jqXHR.complete()
我正在尝试为 jquery 文件上传执行取消按钮(http://blueimp.github.io/jQuery-File-Upload/)。 我的代码: var jqXHR = $('#fileup
我正在创建一个 ajax 实用程序来与我的服务器方法交互。我想利用 jQuery.ajax() 调用返回的对象的 jQuery 1.5+ 延迟方法。情况如下。 服务器端方法始终返回 JSON 对象:
我是 AJAX/Jquery 的新手,并且在我的程序上创建了错误响应,但我遇到了错误如何出现的问题,主要是 jqXHR.responseText。 error: function(jqXHR, tex
对于我的 jQuery 应用程序,我想实现延迟加载。因此,我创建了一个对象,其中包含我所有的 jqXHR promise 。 当我现在将所有内容分组到一个声明中时 var resultset = ne
在我的服务器上(用 Go 编写),我发回了一个自定义 header 字段,当我进行 ajax 调用时我试图从中读取该字段。 $.ajax({ url: url, suc
我正在使用 Backbone 开发一个新应用程序,但尚未编写后端 API,因此我正在尝试使用项目本地的 JSON 数据文件。我将其位置设置为 urlRoot,并且能够获取它并接收回 jqXHR 对象。
jqXHR.status 的可能值是什么? 到目前为止,我可以看到以下内容: if (jqXHR.status === 0) { msg = 'Network Problem'; } else if
在我的 ajax 调用中,responseHeader('Location') FF 始终为空。有谁能够帮助我?顺便说一下,它是一个 CORS。 $.ajax({ ur
我有一个可以引发异常的 Java Spring MVC Controller 。我有一个 @ExceptionHandler 设置来处理这些错误,我想用它来将异常的消息返回给调用者。 服务器代码是:
在 jQuery.ajax() 调用 jqXHR.getAllResponseHeaders() 后,不会返回所有 header 。服务器响应以下 header : Connection: keep-
来自deferred.fail() page : Description: Add handlers to be called when the Deferred object is rejected
我正在使用 JQuery 的 $.when 和 $.get 来获取一些数据并对其执行某些操作。当获取它或对其执行某些操作时出现错误时,我想处理该错误,并根据我正在获取的数据/在哪个路径上获取它,以不同
基本上我使用 jqXHR 和 asmx。如果可能的话我想这样做; 总的来说,在每个页面中,我都会使用 6-7 个带有同步或异步的 ajax 调用,具体取决于它是哪种方法。但是当其中一个出现错误时,我想
我正在尝试使用 jquery 提交登录表单(这是一个弹出式 div)。如果表单验证失败,那么我只想在弹出 div 上显示错误消息,并在 ajax 调用进入错误函数时停止关闭该表单(弹出窗口),因为页面
我有以下 Ajax 调用: $.ajax({ type: 'POST', contentType: 'application/json', url: r
我有 SendRequest 对象,该类具有类似的功能 request: function(args) { return $.ajax.apply
我是一名优秀的程序员,十分优秀!