转自脚本之家:
这篇文章主要介绍了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 文件中加入以下代码(不需要清除换行符的请删除 制表符删除 ):
if (!String.prototype.trim) { /*--------------------------------------- * 清除字符串两端空格,包含换行符、制表符 *---------------------------------------*/ String.prototype.trim = function () { return this.triml().trimr(); } /*---------------------------------------- * 清除字符串左侧空格,包含换行符、制表符 * ---------------------------------------*/ String.prototype.triml = function () { return this.replace(/^[s ]+/g, ""); } /*---------------------------------------- * 清除字符串右侧空格,包含换行符、制表符 *----------------------------------------*/ String.prototype.trimr = function () { return this.replace(/[s ]+$/g, ""); } }
如果只需要 trim 函数的,可以只写一个:
if (!String.prototype.trim){ /*--------------------------------------- * 清除字符串两端空格,包含换行符、制表符 *---------------------------------------*/ String.prototype.trim = function () { return this.replace(/(^[s ]+|[s ]+$)/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