ajax - $.blockUI() 在 IE 9 中匿名调用 ajax 方法
问题描述
function getData(cardNumber) {
var path = g_contextPath + '/test/demo/searchdata';
var vData = {"cardNumber":cardNumber};
$.blockUI();
$.ajax({
type: 'GET',
url : path,
data : vData,
cache : false,
dataType : "json",
async : true,
success : function(output) {
console.log("No data found for the card number : " + output);
$.unblockUI();
},
error : function(jqXHR, textStatus, errorThrown ){
alert(errorThrown);
$.unblockUI();**`strong text`**
}
});
}
虽然调用上述函数在 chrome 中工作得非常好,但在 Internet Explorer 9 中测试时,它调用了两次,一次是预期的,另一次是匿名调用。我的 Eclipse 控制台显示以下错误:
错误 [org.apache.struts2.dispatcher.Dispatcher] (http-/0.0.0.0:8080-8) 处理请求期间发生异常:没有为命名空间 [/test/demo] 映射的操作和关联的操作名称 [未定义]带有上下文路径 [/myapp]。:没有为命名空间 [/test/demo] 映射的操作和与上下文路径 [/myapp] 关联的操作名称 [undefined]。- [未知位置]。
当我评论 $.blockUI(); 然后我的 Eclipse 控制台中没有任何错误。
对于其他要求,我使用了以下 js Using jQuery blockUI plugin V2.53, jQuery JavaScript Library V1.8.2, jquery-ui-1.9.1.custom.js,jquery.dataTables.js,
和使用 Struts 2 的 java 后端
我还添加了 $j = jQuery.noConflict(); 在 jquery(document).ready(function(){}); 否则 $.blockUI 不起作用。
解决方案
切换到 JqueryBlockui.js 的最新版本(版本2.70.0)解决了我的问题
推荐阅读
- xcode - 即使在拉取完成后,推送代码时本地存储库也已过期
- python - Optuna 从“外部”传递参数字典
- flutter - Flutter:如何创建可移动的小部件
- apache - Apache / Wampserver 允许公共 Web 服务器使用 https
- python - 从 NETCDF 文件中提取数据
- amazon-web-services - 在 AWS 上找不到免费套餐使用情况
- python - AttributeError:模块“熊猫”没有属性“面板”
- java - AWS 从 EC2 服务访问 ElasticSearch 域
- javascript - 为什么在类型强制期间在 Javascript 中 console.log('10' > '5') 为假
- swift - 使用文本框然后 segue 给出无法识别的选择器错误/崩溃,我该如何解决这个问题?