2013-10-06 107 views
0

JSON.stringify轉義雙引號。是否有一個輸入,以便下面的代碼(沒有修改)不會導致雙引號的轉義?使用Javascript函數雙引號轉義

<script> 
function test(s) { 
document.write(JSON.stringify(s)); 
} 
</script> 


    <form action="" method="post" onsubmit="test(this.cmd.value); return false;"> 
    <input class="command" type="text" id="cmdbox" name="cmd" /> 
    </form> 

例輸入/輸出:

"test" 

預計:

"test" 

實際:

\"test\" 
+0

你在問什麼? – dandavis

+0

你想改變一些東西而不做任何事情? – Bernhard

+0

我發佈的代碼創建一個輸入框輸入發送到該函數並將結果寫入頁面。是否有包含雙引號的INPUT字符串導致雙引號不會被轉義.. – OBV

回答

2

使用取消轉義的轉義字符串得到預期的結果。

unescape(JSON.stringify(data)) 
+0

「(沒有修改)」 – OBV

+0

'escape'和'unescape'已不再使用,使用'encodeURI'和'decodeURI'。 –

+1

謝謝,我會記住未來;) – Bernhard