2010-09-03 34 views
2

我想在我的輸入變量值爲什麼不能在HTML輸入標籤使用」

顯示12"3我寫這篇文章?

<INPUT TYPE="text" NAME="" value="12\"3"> 

但它是不對的

爲什麼?

PS:我必須轉移到"&quot;,或更改"'我不喜歡它

+0

「我不喜歡它」 - 爲什麼不呢? – detly 2010-09-03 08:26:10

回答

8

HTML根本沒有像其他語言一樣的轉義序列。在HTML屬性值中,唯一的特殊字符是<,&並取決於引號"'。而唯一使用這些字符是character references

有些作者使用字符實體引用「&quot;」編碼的雙引號(")的情況下,因爲該字符可以被用來分隔屬性值。

或者你使用單引號,那麼你就不需要編碼雙引號,反之亦然:

<INPUT TYPE="text" NAME="" value='12"3'> 
+0

但這個解決方案不能在標籤值中鍵入''' – Koerr 2010-09-03 08:28:57

+0

@Zenofo:如果你想在同一個屬性值中使用單引號和雙引號,那麼你需要用一個字符引用來表示這些字符之一:'' '"'''或''''''。 – Gumbo 2010-09-03 08:31:18

+0

@Zenofo當然它可以,你只需要使用HTML實體'''或'#x0027;'。 – slikts 2010-09-03 08:32:45

5

爲什麼?

因爲\在HTML中並不特殊。它不逃避東西。您必須使用&quot;'

<input type="text" name="somename" value='12"3' /> 
<input type="text" name="somename2" value="12&quot;3" /> 
相關問題