jsp接收 input文本輸入框中,無法正確顯示單引號和雙引號的問題


在html的input文本輸入框中,無法正確顯示單引號和雙引號的問題
分類: JavaScript2010-12-08 15:02 4074人閱讀 評論(1) 收藏 舉報
inputhtmljqueryc
html 轉意:

'----單引號
"-----雙引號



網上有很多解決方法,比如其中一種:

pName = pName.replace(/([",'])/g,'//$1');    //單引號:' 雙引號:"進行替換

還可以使用:

 

<input type="text" value="'"/>    如果是要輸出單引號',就用雙引號進行包括,如果是要輸出雙引號",就用單引號'進行包括。

<input type="text" value='"'/>

 

還可以用jquery的方法,直接對這些input

進行賦值,這樣比較方便。

 

還有一個涉及到符號的問題:

 

就是eval函數的問題:

比如:

 

var a = eval('({"a":"b","c":""})');

alert(a.c);    彈出為空。

 

 

var a = eval('({"a":"b","c":"'"})');

alert(a.c);    彈出為空。

var a = eval('({"a":"b","c":"'"})');    雙引號包括單引號
var a = eval('({"a":"b","c":"""})');    雙引號包括雙引號
var a = eval('({"a":"b","c":"/""})');    雙引號包括轉義的雙引號
上面的3者都報錯。只有下面的:
var a = eval('({"a":"b","c":"/'"})');
alert(a.c);    彈出'單引號,正確。
 

&apos;----單引號
&quot;-----雙引號

在一個網頁中的按鈕,寫onclick事件的處理代碼,不小心寫成如下:
<input value="Test" type="button" onclick="alert(""OK"");" />
IE提示出錯后,再漫不經心地改為:
<input value="Test" type="button" onclick="alert(\"OK\");" />
結果還是出錯。
這時,我就想不通了,雖然我知道最直接的解決方法是寫成這樣:
<input value="" type="button" onclick="alert('OK');" />
但為什么javascript中的轉義字符\沒有效果了呢?

后來找到一段正常的代碼:
<input value="Test" type="button" onclick="alert(&quot;OK&quot;);" />
這時才理解,原來這時,還是歸於HTML的管轄范圍,所以轉義字符應該使用HTML的,而不是javascript的。

兩個雙引號的做法是vbScript的,\"這種做法則是javascript的,而HTML的,則是用&quot;,此外還可以使用:"、'。

下面列出各種表達方法:
<html>
< body>
< input value="外雙引號內雙引號-錯誤" type="button" onclick="alert("OK");" /><br />
< input value="外單引號內單引號-錯誤" type="button" onclick='alert('OK');' /><br />
< input value="兩個雙引號-錯誤" type="button" onclick="alert(""OK"");" /><br />
< input value="兩個單引號-錯誤" type="button" onclick="alert(''OK'');" /><br />
< input value="\+雙引號-錯誤" type="button" onclick="alert(\"OK\");" /><br />
< input value="\+單引號-錯誤" type="button" onclick="alert(\'OK\');" /><br />
< input value="外雙引號內單引號-OK" type="button" onclick="alert('OK');" /><br />
< input value="外單引號內雙引號-OK" type="button" onclick='alert("OK");' /><br />
< input value="外部不使用引號-OK" type="button" onclick=alert('OK');alert("OK"); /><br />
< input value="HTML轉義字符"(& # 3 4 ;)-OK" type="button" onclick="alert("OK");" /><br />
< input value="HTML轉義字符'(& # 3 9 ;)-OK" type="button" onclick="alert('OK');" /><br />
< input value="HTML轉義字符"(& # x 2 2 ;)-OK" type="button" onclick="alert('OK');" /><br />
< input value="HTML轉義字符'(& # x 2 7 ;)-OK" type="button" onclick="alert('OK');" /><br />
< input value="HTML轉義字符&quot;(& q u o t ;)-OK" type="button" onclick="alert(&quot;OK&quot;);" /><br />
< input value="HTML轉義字符&apos;(& a p o s ;)-IE錯誤"type="button" onclick="alert(&apos;OK&apos;);" /><br />

<input value="其它\\-錯誤" type="button" onclick="alert(\\"OK\\");" /><br />
< input value="其它\& # 3 4 ;-錯誤" type="button" onclick="alert(\"OK\");" /><br />
< /body>
< /html>

 

在html的input文本輸入框中,無法正確顯示單引號和雙引號的問題分類: JavaScript2010-12-08 15:02 4074人閱讀 評論(1) 收藏 舉報inputhtmljquerychtml 轉意:
&apos;----單引號&quot;-----雙引號


網上有很多解決方法,比如其中一種:
pName = pName.replace(/([",'])/g,'//$1');//單引號:&#39; 雙引號:&#34;進行替換
還可以使用:
 
<input type="text" value="'"/>如果是要輸出單引號',就用雙引號進行包括,如果是要輸出雙引號",就用單引號'進行包括。
<input type="text" value='"'/>
 
還可以用jquery的方法,直接對這些input
進行賦值,這樣比較方便。
 
還有一個涉及到符號的問題:
 
就是eval函數的問題:
比如:
 
var a = eval('({"a":"b","c":""})');
alert(a.c);彈出為空。
 
 
var a = eval('({"a":"b","c":"'"})');
alert(a.c);彈出為空。
var a = eval('({"a":"b","c":"'"})');雙引號包括單引號var a = eval('({"a":"b","c":"""})');雙引號包括雙引號var a = eval('({"a":"b","c":"/""})');雙引號包括轉義的雙引號上面的3者都報錯。只有下面的:var a = eval('({"a":"b","c":"/'"})');alert(a.c);彈出'單引號,正確。 
&apos;----單引號&quot;-----雙引號
在一個網頁中的按鈕,寫onclick事件的處理代碼,不小心寫成如下:<input value="Test" type="button" onclick="alert(""OK"");" />IE提示出錯后,再漫不經心地改為:<input value="Test" type="button" onclick="alert(\"OK\");" />結果還是出錯。這時,我就想不通了,雖然我知道最直接的解決方法是寫成這樣:<input value="" type="button" onclick="alert('OK');" />但為什么javascript中的轉義字符\沒有效果了呢?
后來找到一段正常的代碼:<input value="Test" type="button" onclick="alert(&quot;OK&quot;);" />這時才理解,原來這時,還是歸於HTML的管轄范圍,所以轉義字符應該使用HTML的,而不是javascript的。
兩個雙引號的做法是vbScript的,\"這種做法則是javascript的,而HTML的,則是用&quot;,此外還可以使用:"、'。
下面列出各種表達方法:<html>< body>< input value="外雙引號內雙引號-錯誤" type="button" onclick="alert("OK");" /><br />< input value="外單引號內單引號-錯誤" type="button" onclick='alert('OK');' /><br />< input value="兩個雙引號-錯誤" type="button" onclick="alert(""OK"");" /><br />< input value="兩個單引號-錯誤" type="button" onclick="alert(''OK'');" /><br />< input value="\+雙引號-錯誤" type="button" onclick="alert(\"OK\");" /><br />< input value="\+單引號-錯誤" type="button" onclick="alert(\'OK\');" /><br />< input value="外雙引號內單引號-OK" type="button" onclick="alert('OK');" /><br />< input value="外單引號內雙引號-OK" type="button" onclick='alert("OK");' /><br />< input value="外部不使用引號-OK" type="button" onclick=alert('OK');alert("OK"); /><br />< input value="HTML轉義字符"(& # 3 4 ;)-OK" type="button" onclick="alert("OK");" /><br />< input value="HTML轉義字符'(& # 3 9 ;)-OK" type="button" onclick="alert('OK');" /><br />< input value="HTML轉義字符"(& # x 2 2 ;)-OK" type="button" onclick="alert('OK');" /><br />< input value="HTML轉義字符'(& # x 2 7 ;)-OK" type="button" onclick="alert('OK');" /><br />< input value="HTML轉義字符&quot;(& q u o t ;)-OK" type="button" onclick="alert(&quot;OK&quot;);" /><br />< input value="HTML轉義字符&apos;(& a p o s ;)-IE錯誤"type="button" onclick="alert(&apos;OK&apos;);" /><br />
<input value="其它\\-錯誤" type="button" onclick="alert(\\"OK\\");" /><br />< input value="其它\& # 3 4 ;-錯誤" type="button" onclick="alert(\"OK\");" /><br />< /body>< /html>--------------------- 作者:北方的刀郎 來源:CSDN 原文:https://blog.csdn.net/forest_fire/article/details/50944717 版權聲明:本文為博主原創文章,轉載請附上博文鏈接!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM