第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

從輸入字段讀取屬性時(shí),HTML編碼丟失

從輸入字段讀取屬性時(shí),HTML編碼丟失

從輸入字段讀取屬性時(shí),HTML編碼丟失我正在使用JavaScript從隱藏字段中提取值并將其顯示在文本框中。隱藏字段中的值已編碼。例如,<input id='hiddenId' type='hidden' value='chalk &amp; cheese' />被拉進(jìn)去<input type='text' value='chalk &amp; cheese' />通過一些jQuery從隱藏字段中獲取值(此時(shí)我丟失了編碼):$('#hiddenId').attr('value')問題是,當(dāng)我chalk &amp; cheese從隱藏字段中讀取時(shí),JavaScript似乎失去了編碼。我不想要價(jià)值chalk & cheese。我希望amp;保留文字。是否有一個(gè)JavaScript庫或jQuery方法將對字符串進(jìn)行HTML編碼?
查看完整描述

3 回答

?
Helenr

TA貢獻(xiàn)1780條經(jīng)驗(yàn) 獲得超4個(gè)贊

編輯:這個(gè)答案很久以前發(fā)布了,該htmlDecode函數(shù)引入了一個(gè)XSS漏洞。它已被修改,將臨時(shí)元素從a div更改為textarea減少XSS機(jī)會(huì)。但是現(xiàn)在,我鼓勵(lì)您按照其他anwswer的建議使用DOMParser API 。


我使用這些功能:

function htmlEncode(value){
  // Create a in-memory element, set its inner text (which is automatically encoded)
  // Then grab the encoded contents back out. The element never exists on the DOM.
  return $('<textarea/>').text(value).html();}function htmlDecode(value){
  return $('<textarea/>').html(value).text();}

基本上,div元素在內(nèi)存中創(chuàng)建,但它永遠(yuǎn)不會(huì)附加到文檔中。

htmlEncode函數(shù)上我設(shè)置了innerText元素,并檢索編碼的innerHTML; 在htmlDecode函數(shù)上我設(shè)置innerHTML元素的值并innerText檢索。

在這里查看一個(gè)運(yùn)行示例。


查看完整回答
反對 回復(fù) 2019-05-27
  • 3 回答
  • 0 關(guān)注
  • 676 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)