javascript - 为什么这个脚本在 IE8 中不起作用?

标签 javascript jquery internet-explorer-8

我正在使用 jquery 1.10.2,下面对我的 dialogOpen 函数的调用在 IE9+ 中工作正常,但我在 IE8 中收到以下错误:

对象不支持此属性或方法。有什么想法吗?

dialogOpen($(this).attr("id"), $(this).find(".tdStyle").html().trim(),     $(this).find(".tdQtyOnHand").html().trim(), $(this),  $(this).find(".tdPlantID").html().trim());

谢谢

最佳答案

.html() 返回一个 String 对象,IE 不支持 String 上的 .trim() 方法,幸运的是 jQuery 提供了一个替代方法,$.trim(String) .您也可以按照 this exhaustive article 自己添加它(但老实说,jQuery 已经加载了,您为什么要这样做) (这将允许您完全不修改原始代码):

if (!String.prototype.trim) {
  String.prototype.trim = function () {
    return this.replace(/^\s+|\s+$/gm, '');
  };
}

关于javascript - 为什么这个脚本在 IE8 中不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21265929/

相关文章:

javascript - 如何在文档的多个部分中重用表单和 jquery ajax 调用?

javascript - 创建没有主/详细信息的 Kendo UI 层次结构网格

javascript - jQuery 1.7.2 - selector.val() 在 IE 8 中中断

css - IE 8 不显示导航栏

css - div 背景的不透明度不影响 IE 8 中包含的元素?

javascript - react 淡入元素

javascript - 将幻灯片放映在顶部,页面下方可见

javascript - 火狐浏览器。如何获取当前加载网站的css javascript文件?

javascript - 使用javascript将多个Li添加到Ul

javascript - 如何用 jquery 对话框替换 javascript 警报(在事件调用它的地方弹出)?