我试图在我的一个JavaScript程序中应用.trim()到字符串。它在Mozilla下运行良好,但在IE8中尝试时显示错误。有人知道这是怎么回事吗?有没有办法我可以让它在IE中工作?

代码:

var ID = document.getElementByID('rep_id').value.trim();

错误显示:

Message: Object doesn't support this property or method
Line: 604
Char: 2
Code: 0
URI: http://test.localhost/test.js

当前回答

看起来这个函数在IE中没有实现。如果你正在使用jQuery,你可以使用$.trim()来代替(尽管在jQuery 3.5已经弃用了)。

其他回答

这是因为输入错误getElementByID。将其更改为getElementById

我认为JavaScript标准中没有原生的trim()方法。也许Mozilla提供了一个,但如果你想在IE中使用,你需要自己编写。本页上有几个版本。

https://developer.mozilla.org/En/Core_JavaScript_1.5_Reference/Global_Objects/String/Trim

这是javascript最近添加的功能,IE不支持。

看起来这个函数在IE中没有实现。如果你正在使用jQuery,你可以使用$.trim()来代替(尽管在jQuery 3.5已经弃用了)。

添加以下代码向字符串添加修饰功能。

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