[英]how to trim string in javascript?
嗨,我正在尝试在javascript中从两端修剪字符串,但是它无法正常工作。脚本无法正常工作,或者有时它失去了文本框的焦点。 我正在写如下的javascript并在validate函数中调用它
function trim(s)
{
if (typeof s!= "string") {
return s;
}
var retValue = s;
var ch = retValue.s(0, 1);
while (ch == " ")
{ retValue = retValue.substring(1, retValue.length);
ch = retValue.substring(0, 1);
}
ch = retValue.substring(retValue.length-1, retValue.length);
while (ch == " ")
{
retValue = retValue.substring(0, retValue.length-1);
ch = retValue.substring(retValue.length-1, retValue.length);
}
while (retValue.indexOf(" ") != -1)
{
retValue = retValue.substring(0, retValue.indexOf(" ")) + retValue.substring(retValue.indexOf(" ")+1, retValue.length);
}
return retValue;
}
function validate() {
// alert("Please! Enter Farm Name");
if (!trim(document.getElementById("<%=txtFarm_Name.ClientID%>").value)) {
alert("Please! Enter Farm Name");
document.getElementById("<%=txtFarm_Name.ClientID%>").focus();
return false;
}
}
您可以执行以下操作
if(!String.prototype.trim) {
String.prototype.trim = function () {
return this.replace(/^\s+|\s+$/g,'');
};
}
一旦执行了以上代码,就可以像下面这样使用
var str = " Hello world ";
console.log(str.trim());
或者,如果项目中使用了jQuery,那么类似以下的内容也将起作用
var str = " Hello world ";
$.trim(str);
当.trim()函数在2008年以JS方式不可用时,我已经编写了此函数进行修整。某些较旧的浏览器仍不支持.trim()函数,希望此函数对您有所帮助。
修剪功能
function trim(str)
{
var startpatt = /^\s/;
var endpatt = /\s$/;
while(str.search(startpatt) == 0)
str = str.substring(1, str.length);
while(str.search(endpatt) == str.length-1)
str = str.substring(0, str.length-1);
return str;
}
说明 :函数trim()接受一个字符串对象,并删除任何开头和结尾的空格(空格,制表符和换行符)并返回修剪后的字符串。 您可以使用此功能修剪表单输入,以确保发送有效数据。
例如,可以以下方式调用该函数。
form.elements[i].value = trim(form.elements[i].value);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.