2016-02-18 21 views
1

我們獲取可能包含單引號的客戶的姓氏和名字。如果其中一個名稱包含單引號,則會出現腳本錯誤「Expected」;「'。在Javascript中轉義單引號

的片段迎接顧客:

greeting = "Guten Tag " + '<xsl:value-of select="cognetic_core_person/@person_firstName" />' + "&nbsp;" +'<xsl:value-of select="cognetic_core_person/@person_lastName" />' + "!"; 

我不能只使用雙引號,因爲在雙引號括起來。所以

replace(/'/g , "\'") 

或類似的東西是行不通的,我迄今爲止發現的唯一建議。

回答

0

使其

replace(/'/g , "\\\'") 

例如

"as's".replace(/'/g , "\\\'") //輸出爲\的

基本上你需要使用單斜槓3次,一個斜線逃脫斜線本身和一個逃避報價。

+0

的問題是它需要替換爲文本: \t問候= 」Guten標籤「 +'Jéän-Françöisü'.replace(/'/ g,「\\\'」)+「 」+'BO'LOMEYèéà'.replace(/'/ g,「\\\'」)+「!」 ; – Shade

+0

@Shade那是因爲你用單引號括起了名字。把它們用雙引號括起來就像''BO'LOMEYèéà「.replace(/'/ g,」\\\'「)' – gurvinder372

+0

感覺很愚蠢。已經嘗試過,並沒有工作,可能是我第一次嘗試這個時候的另一個bug。非常感謝你的幫助。 – Shade

0

Repace `(九死一生鍵)

O'Doil將O`Doil