2010-04-17 106 views
3
var html = "<div>"+title+"<br/>"; 
document.write(title.replace(/ /g,"-")); 
html+= '<p><a href="go.aspx?title=' + title + '">Details<\/a></p></div>'; 

我想替换标题带短划线的空格。用短划线替换空格JavaScript

回答

11

改为尝试title.replace(/\s/g , "-")。 (/\s/是空格的正则表达式转义)。

而且,这样做:

title = title.replace(/\s/g , "-"); 
var html = "<div>" + title + "</div>"; 
// ... 
+0

您提出的代码很有用。 – Francisco 2014-08-07 06:18:10

5

调用title.replace不会改变标题,但返回其中的值已被替换的字符串。您需要使用返回值:

var html = "<div>"+title+"<br/>"; 
var newTitle = document.write(title.replace(/ /g,"-")); 
html+= '<p><a href="go.aspx?title=' + newTitle + '">Details<\/a></p></div>'; 

正则表达式很好,但只会替换空格而不是全部空格。

+0

我在谷歌地图中得到了undefined – ruru 2010-04-17 06:14:14

相关问题