在 URL 字符串中替换撇号的问题
Issue with replacing apostrophe in URL string
我试过转义、替换、拆分和加入,但我似乎无法摆脱类别标题中的 ':
Over 60's
var dropdown = document.getElementById("cat");
if ( dropdown.options[dropdown.selectedIndex].value > 0 ) {
var currentText = this.options[this.selectedIndex].innerHTML;
var currentSlug = currentText.replace(/ |'/g, function(match){ if (match === " " || match === "'" ){ return "-"; } return "";}).toLowerCase();
location.href = "..url.. " + currentSlug;
} else {
location.href = dropdown.baseURI;
}
}
dropdown.onchange = onCatChange;
这个场景需要不同的方法吗
如果要将字符列表替换为破折号,应将字符放在方括号内 []
。对于撇号,使用反斜杠将其转义。
var s ="Text|Text'Text Text";
// replace all instances of space, pipe and apostrophe to dash
// and convert the string to lowercase
var t = s.replace(/[ |\']/g,'-').toLowerCase();
// use t here
alert(t);
我试过转义、替换、拆分和加入,但我似乎无法摆脱类别标题中的 ':
Over 60's
var dropdown = document.getElementById("cat");
if ( dropdown.options[dropdown.selectedIndex].value > 0 ) {
var currentText = this.options[this.selectedIndex].innerHTML;
var currentSlug = currentText.replace(/ |'/g, function(match){ if (match === " " || match === "'" ){ return "-"; } return "";}).toLowerCase();
location.href = "..url.. " + currentSlug;
} else {
location.href = dropdown.baseURI;
}
}
dropdown.onchange = onCatChange;
这个场景需要不同的方法吗
如果要将字符列表替换为破折号,应将字符放在方括号内 []
。对于撇号,使用反斜杠将其转义。
var s ="Text|Text'Text Text";
// replace all instances of space, pipe and apostrophe to dash
// and convert the string to lowercase
var t = s.replace(/[ |\']/g,'-').toLowerCase();
// use t here
alert(t);