国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > HTML > 正文

關于使用Textarea的注意事項

2024-08-26 00:12:31
字體:
來源:轉載
供稿:網友
為什么要特別提textarea?因為其實textarea這個節點很特殊。而因為這個節點特殊,所以在IE和其它瀏覽器下,對它的解釋不一樣。

賣一下關子,哈哈!其實主要原因是今天幫一個師兄修一個BUG,具體是因為從服務器拉數據下來插進textarea的時候失敗,這個情況只在IE出現。其它瀏覽器一切正常!

首先,為什么textarea特殊?在所有的表單插件里面,textarea的值是寫在兩個開閉標簽之間的,所以它的值在DOM的角度可以看作是文本節點,這是textarea特有的。也正因為這個特性,所以當你修改它的innerHTML的值時你仍然可以改變textarea的文本,而IE雖然支持這樣做,卻不允許一件事:動態插入一些html標簽。

你不妨做一個實驗:

在IE下通過JS插入一段HTML代碼,用的是innerHTML屬性而不是value或者innerText。

IE9+我是沒有去測試,但是IE6、7、8都會報錯。

估計是出于安全的原因,所以才不允許JS動態插入html進textarea,但細心的人可以發現,其實如果你手動鍵入html代碼的話,textarea是可以接受的。我想其實這經歷了這樣一個過程:字符轉義。對的,這是唯一能夠解釋手動輸入html代碼成功的原因了。

所以,在我看來,既然那么多的瀏覽器的textarea都不支持html的顯示,為何JS操作的時候還要用innerHTML屬性呢?也就是說無論你用value插入html代碼還是用innerHTML插入html代碼,它都不會解析后顯示(所以才會有富文本編輯器代替textarea),那么為什么不用value去設置textarea的值呢?

所以我認為,設置textarea的值不應該通過innerHTML(當然更不可能是innerText,因為firefox的原因),而要通過value去設置。這一點是開發人員要注意的。因為最近看的一些童鞋的代碼老喜歡用innerHTML。其實我認為這都是要分場合的。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 林州市| 湖北省| 平邑县| 鄂尔多斯市| 佛坪县| 怀柔区| 长沙市| 鄂温| 怀化市| 北宁市| 郎溪县| 陈巴尔虎旗| 武鸣县| 云浮市| 且末县| 岚皋县| 界首市| 平顶山市| 富川| 平罗县| 玛多县| 秀山| 武鸣县| 高安市| 奈曼旗| 盘山县| 工布江达县| 泰来县| 山东省| 辽宁省| 邳州市| 金平| 荔浦县| 迭部县| 巨鹿县| 阿勒泰市| 昌宁县| 宿迁市| 日喀则市| 凭祥市| 靖宇县|