2009-09-25 8 views
2

Généralement j'ai vu un formulaire d'inscription les champs de texte sont remplis par exemple Entrez le prénom ou Entrez le nom de famille ici comme ça comment puis-je écrire comme ça. Est-ce javascript? u peut me dire comment puis-je écrire que comme ça me aider grâceTexte par défaut dans la zone de texte lors du chargement de la page

+0

nécessité de clarifier votre question, et peut-être se référer à un exemple. – Jakub

+0

j'ai besoin de l'effet de marque d'eau sur la zone de texte –

Répondre

3

Sur la base de vos commentaires au poste de Phoenix vous pouvez essayer quelque chose comme ceci:

<input type="text" value="Enter your name..." onfocus="CheckText(this, 'Enter your name...');" /> 
    <script language="javascript"> 
    function CheckText(e, text){ 
     if(e.value == text){ 
      e.value = ''; 
     } 
    } 
</script> 
0

Vous devez définir la propriété de valeur de la zone de texte pour le texte souhaité comme

<input type="text" id="txt1" value="Enter text here" /> 

Lorsque l'entrée reçoit le focus et la valeur est celui par défaut efface alors la valeur. Et si l'utilisateur n'a rien saisi et que le focus quitte la zone de texte, replacez les valeurs par défaut dans la zone de texte.

Assurez-vous également que vous ne mettez pas à jour la base de données avec la valeur par défaut.

+0

non non vous ne me comprenez pas quand je place le curseur sur cette zone de texte particulière le texte devrait disparaître et je peux écrire ce que je veux –

+0

pour cela, vous devrez ajouter onclick = "this .value = '' ". – jrummell

+0

Cela effacera votre texte chaque fois que vous cliquez dessus. Vous devriez effacer le texte sur l'événement onfocus de l'entrée, mais seulement s'il correspond à votre texte initial. –

1

Comme vous vous le suggérez, vous pouvez utiliser JavaScript appelé l'événement onload, quelque chose comme:

<body onload="document.getElementById('firstName').value = 'Enter first name'" ...> 

Vous groupe pourrait plusieurs instructions dans une fonction et il suffit d'appeler que sur onload.

Ou vous pouvez simplement définir la valeur directement dans l'entrée:

<input type="text" id="firstName" name="firstName" value="Enter first name" /> 
3

Ce que vous voulez est un TextBoxWatermark. AJAX Control Toolkit en a un. En outre, voici un exemple d'un ASP.NET Textbox Watermark personnalisé.

EDIT: Exemple ci-dessous est de lien référencé ci-dessus

Contrôle du balisage:

<asp:textbox id="txtSimpleSearch" runat="server"></asp:TextBox> 

JS Fonctions:

function WatermarkFocus(txtElem, strWatermark) { 
if (txtElem.value == strWatermark) txtElem.value = ''; 
} 
function WatermarkBlur(txtElem, strWatermark) { 
if (txtElem.value == '') txtElem.value = strWatermark; 
} 

code Derrière:

string strWatermarkSearch = "Search"; 
txtSimpleSearch.Text = strWatermarkSearch; 
txtSimpleSearch.Attributes.Add("onfocus", "WatermarkFocus(this, '" + strWatermarkSearch + "');"); 
txtSimpleSearch.Attributes.Add("onblur", "WatermarkBlur(this, '" + strWatermarkSearch + "');"); 
+0

exactement mr.rick_schott c'est ce que je veux? –

+0

je veux dire que exactement l'effet de filigrane dont j'ai besoin –

Questions connexes