此功能适用于某些IE浏览器,但并不适用。 IE 8给了我一个错误:
网页错误详情
用户代理:Mozilla / 4.0(兼容; MSIE 8.0; Windows NT 5.1; Trident / 4.0; GTB7.3; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET4 .0C; .NET4.0E; MS-RTC LM 8) 时间戳:2012年4月25日星期三15:18:21 UTC
Message: Object doesn't support this property or method
Line: 9
Char: 17
Code: 0
URI: file:///G:/1.html
代码:
GetLink();
function GetLink() {
selectedOption = "asdasdasd: asdasdas|asdadasd:asdadsasd|asdasdasd:asdasdad";
ROOM = selectedOption.split("|")[0].trim().split(":")[1].trim();
BUILDING = selectedOption.split("|")[1].trim().split(":")[1].trim();
var ret = "room_chart.jsp?room=" + ROOM + "&building=" + BUILDING;
return ret;
}
答案 0 :(得分:6)
split
方法很好,导致问题的是trim
。你可以使用这个小polyfill from MDN:
if(!String.prototype.trim) {
String.prototype.trim = function () {
return this.replace(/^\s+|\s+$/g,'');
};
}
String.prototype.trim
在IE中不可用< 9.上面的代码片段只是将split
方法添加到String.prototype
(如果它尚不存在),并且行为完全符合您对本机实现的预期。
如果您使用的是jQuery,则可以使用$.trim
方法。