SORU
24 NİSAN 2009, Cuma


Özel karakterler Javascript ile HTML dönüştürmek

Herhangi bir Javascript HTML özel karakterler dönüştürmek nasıl biliyor mu?

Örnek:

 '&' (ampersand) becomes '&' <br>
 '"' (double quote) becomes '"' when ENT_NOQUOTES is not set.<br>
 ''' (single quote) becomes ''' only when ENT_QUOTES is set.<br>
 '<' (less than) becomes '<'<br>
 '>' (greater than) becomes '>'

CEVAP
24 NİSAN 2009, Cuma


Benim görüşüme göre en iyi şekilde tarayıcının bu davalar işlemek için işlevsellik kaçış HTML dahili kullanım için. Bunu yapmak için sadece DOM ağacında bir öğe oluşturmak ve dize öğe innerText ayarlayın. O zaman AL öğe innerHTML. Tarayıcı HTML olarak kodlanmış bir dize döndürür.

function HtmlEncode(s)
{
  var el = document.createElement("div");
  el.innerText = el.textContent = s;
  s = el.innerHTML;
  return s;
}

Testi:

alert(HtmlEncode('&;\'><"'));

Çıkış:

&;'><"

HTML kaçan bu yöntem de basit bir örnek daha verdim ama Prototype JS library tarafından kullanılır.

Not: hala tırnak () çift ve tek kaçış gerekir kendini. Bu yöntemler başkaları tarafından burada belirtilen herhangi birini kullanabilirsiniz.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Bogdan Gabriel

    Bogdan Gabri

    5 Aralık 2006
  • Digital Bounds

    Digital Boun

    19 Temmuz 2013
  • esnathesinger

    esnathesinge

    6 NİSAN 2009