转自脚本之家:
这篇文章主要介绍了JS去掉字符串前后空格或去掉所有空格的用法,需要的朋友可以参考下:
代码如下:
function Trim(str)
{
return str.replace(/(^\s*)|(\s*$)/g, "");
}
说明:
如果使用jQuery直接使用$.trim(str)方法即可,str表示要去掉前后所有空格的字符串。
2、 去掉字符串中所有空格(包括中间空格,需要设置第2个参数为:g)
function Trim(str,is_global)
{
var result;
result = str.replace(/(^\s+)|(\s+$)/g,"");
if(is_global.toLowerCase()=="g")
{
result = result.replace(/\s/g,"");
}
return result;
}
3、现在大部分浏览器中基本上都支持字符串的 trim 函数,但是为了兼容不支持的浏览器,我们最好还是在 Js 文件中加入以下代码(不需要清除换行符的请删除 \n 制表符删除 \t):
if (!String.prototype.trim) { /*---------------------------------------
* 清除字符串两端空格,包含换行符、制表符
*---------------------------------------*/
String.prototype.trim = function () {
return this.triml().trimr();
} /*----------------------------------------
* 清除字符串左侧空格,包含换行符、制表符
* ---------------------------------------*/
String.prototype.triml = function () {
return this.replace(/^[\s\n\t]+/g, "");
} /*----------------------------------------
* 清除字符串右侧空格,包含换行符、制表符
*----------------------------------------*/
String.prototype.trimr = function () {
return this.replace(/[\s\n\t]+$/g, "");
}
}
如果只需要 trim 函数的,可以只写一个:
if (!String.prototype.trim){ /*---------------------------------------
* 清除字符串两端空格,包含换行符、制表符
*---------------------------------------*/
String.prototype.trim = function () {
return this.replace(/(^[\s\n\t]+|[\s\n\t]+$)/g, "");
} }
使用代码:
var str = " abcd ".trim();
起因:我准备找一个js去除空格的简便方法,翻阅文档惊奇的发现没有,w3cschool的javascript文档.准备Google一下.发现还有经常碰到JQuery里的trim()函数在firefox支持,但是在IE里不支持这么一回事.其主要原因是写法不对,下面是错误的写法
var content = $('#content').val(); if(content.trim() == '') { alert('空'); }
上面的写法在firefox下不会报错,但在ie下确会报错
正确的写法应该为
var content = $('#content').val(); if($.trim(content) == '') { alert('空'); } var content = $('#content').val(); if(jQuery.trim(content) == '') { alert('空'); }
一个小问题,还是自己准备一个解决这些琐事问题的小型的工具js,比较好.模糊查询没去除空格,想在前端搞下。
原文地址:http://www.jb51.net/article/109522.htm