HTML varlıklar Javascript Unescape?
XML-RPC bir arka uç ile iletişim kuran bazı Javascript kodu var. XML-RPC şeklinde bir dize döndürür:
<img src='myimage.jpg'>
HTML içine dizeleri eklemek için Javascript kullanın, ancak tam anlamıyla bir hale getirir. Bir resim göremiyorum, ben kelimenin tam anlamıyla dize bakın:
<img src='myimage.jpg'>
Benim tahminim HTML XML-RPC kanalı üzerinden kaçtı.
Nasıl Javascript dize unescape miyim? Bu sayfada tekniklerini denedim, başarısız: http://paulschreiber.com/blog/2008/09/20/javascript-how-to-unescape-html-entities/
Sorunu teşhis etmek için başka yollar nelerdir?
CEVAP
Aşağıdaki yöntemi kullanın:
function htmlDecode(input){
var e = document.createElement('div');
e.innerHTML = input;
return e.childNodes.length === 0 ? "" : e.childNodes[0].nodeValue;
}
htmlDecode("<img src='myimage.jpg'>");
// returns "<img src='myimage.jpg'>"
Temelde bir DOM öğesi programlı olarak oluşturmak, innerHTML kodlanmış HTML atama ve metin düğümü innerHTML ekleme üzerinde oluşturulan nodeValue almak.
Çapraz tarayıcı HTML Character Entities tüm kabul çalışacak.
EDİT: bu kod eski sürümü here on jsFiddle (IE view) kanıtlandığı üzere boş giriş ile IE işe yaramadı. Yukarıdaki sürüm tüm girişleri ile çalışır.
Ekleme varlıklar CSS kullanarak HTML i...
HTML-kodlama JavaScript/jQuery...
Şerit Metin JavaScript HTML...
unescape html raw vs vs html_safe h...
Nasıl Ruby/decode kodlamak HTML varlık...