J'ai une zone de texte dans mon formulaire qui accepte tous les caractères possibles de l'utilisateur. Je limite le nombre de caractères entré dans la zone de texte à 10. Lorsque l'utilisateur entre un texte de caractère spécial dire `SampleTxt » le nombre de caractères dans textarea est 10. Mais quand je reçois la valeur de la zone de texte sous la forme, le texte devient SampleTxt Conversion de caractères spéciaux de Javascript en Java
et le compte du texte devient 21. Comment surmonter ce problème?
function toCount(in) {
var inObj=document.getElementById(in);
var re='/\r\n|\n|\r\|\f/g';
var i=0;
while(re.match(inObj.value)){i++;}
var length=characters - (inObj.value.length+i);
if(length <= 0) {
inObj.value=inObj.value.substr(0,characters);
document.getElementById("remcount").innerHTML = inObj.value.length;
}
}
Jsp
< html:textarea property="descTxt" styleId="desc" onkeyup="toCount('desc');" />
Je pense que la réponse à cette question vous aidera à: http://stackoverflow.com/questions/1912501/unescape-html-entities-in-javascript – aroth
@aroth même quand je l'utilise unescape. J'obtiens ce problème – DDK
Oui, parce que 'unescape()' est la mauvaise fonction à utiliser dans ce cas. Vous devez utiliser la fonction 'htmlDecode()' décrite dans la réponse à l'autre question. – aroth