2010-06-10 4 views
0

J'essaye d'assigner la valeur pour un champ d'édition (pas le contrôle d'asp.net) dans l'application d'asp.net utilisant le code de Javascript. Il semble que < chaîne de caractère dans la valeur donne des problèmes pour ASP.NET. Si j'enlève < et> les caractères de la valeur tout fonctionne bien.Comment assigner correctement la valeur au champ

Où est le problème? Comment passer <> caractères sur le terrain? Je ne veux pas utiliser le code ServerSide Je veux le faire sur ClientSide en utilisant la boîte de dialogue JS et HTML Edit.

 function loadShareBox(pageTitle) { 
      document.getElementById("shareHTML").value = '<a href="' + document.location.href + '" target=_blank>' + pageTitle + '</a>'; 
     } 

salutations, Tomas

Répondre

1

essayer d'utiliser ces

&lt; corresponds < 
&gt; corresponds > 

le code ressemblerait à ceci

function loadShareBox(pageTitle) { 
     document.getElementById("shareHTML").value = '&lt;a href="' + document.location.href + '" target=_blank&gt;' + pageTitle + '&lt;/a&gt;'; 
    } 

edit: ah, je pense qu'il ya un autre problème. Vous essayez d'insérer un nouvel élément dans un autre élément. Vous devez donc créer un nouvel élément et l'ajouter dans shareHTML.

var myLink = document.createElement("a"); 
myLink.setAttribute("href", "mylink"); 
var text = document.createTextNode("Link name"); 
myLink.appendChild(text); 
var myElement = document.getElementById("shareHTML") 
myElement.appendChild(myLink); 

cela devrait faire le travail

+0

shareHTML est objet html INPUT. Donc ajouter un attribut à ce n'est pas correct, aussi <et> ne aide pas parce qu'ils ne sont pas interprétés par le navigateur et dans le contrôle INPUT ils apparaissent comme <et>, et non <> – Tomas