2013-06-19 4 views
0

J'ai développé un contrôle personnalisé asp.net en utilisant la zone de texte, et il est utilisé à différents endroits dans un formulaire, comment puis-je obtenir la valeur de la boîte de texte. J'utilise la syntaxe suivante, mais elle ne fonctionne pas.Récupère la valeur du script java de la zone de texte de contrôle personnalisé asp.net

suivant propetly ajouté à la classe de contrôle personnalisé -

public TextBox ObjTextBox 
{ 
    get { return objTextBox; } 
} 

le code suivant à l'aide pour obtenir la valeur de contrôle personnalisé

<script type="text/javascript"> 
    function met1() { 
     var objTextBox = document.getElementById('<%=MyTextBox1.ObjTextBox.ClientID %>'); 
     alert(objTextBox.value); 
    } 
</script> 
+0

erreur de log s'il y a lieu. ou qu'est-ce qui est alerté? – karaxuna

+0

son erreur de flottement dit - ": 'chaîne' ne contient pas de définition pour 'ClientID' et aucune méthode d'extension 'ClientID' acceptant un premier argument de type 'chaîne' n'a été trouvée (manque une directive using ou une référence d'assembly ?) " – yadavr

+0

apparaît que' MyTextBox1.ObjTextBox' est une chaîne. essayez ceci: '<% = MyTextBox1.ClientID%>' – karaxuna

Répondre

1

Ajouter une propriété sur votre contrôle personnalisé comme:

public string TextBoxClientID 
{ 
    get 
    { 
    return objTextBox.ClientID; 
    } 
} 

Et utiliser cette propriété comme:

var objTextBox = document.getElementById('<%=MyTextBox1.TextBoxClientID %>'); 
+0

cela a fonctionné merci :) – yadavr

Questions connexes