J'essaye d'envoyer un contrôle d'asp (zone de texte) à une fonction de javascript.Comment envoyer un contrôle d'asp à javascript
onblur="CalculateLossRatio(this.value,<%=txtLossRatioCurrentYear.ClientID%>)"
Est-ce la bonne façon de procéder?
J'essaye d'envoyer un contrôle d'asp (zone de texte) à une fonction de javascript.Comment envoyer un contrôle d'asp à javascript
onblur="CalculateLossRatio(this.value,<%=txtLossRatioCurrentYear.ClientID%>)"
Est-ce la bonne façon de procéder?
Dans votre situation, vous pouvez faire quelque chose comme ce qui suit:
<asp:TextBox ID="TextBox1" onblur="CalculateLossRatio(this.value, 1)" runat="server" />
<asp:TextBox ID="TextBox2" runat="server" Text="7"/>
<script type="text/javascript">
function CalculateLossRatio(arg1, arg2)
{
if (arg2 == 1)
{
var txt = document.getElementById('<%=TextBox2.ClientID%>');
}
else if(arg2 == 2)
{
// TODO - get other txt...
}
alert(arg1 - txt.value);
}
</script>
Je veux envoyer un autre textbox aussi. Donc, je ne serais pas capable d'utiliser (ceci). –
@vaibhav: Je pense que vous feriez mieux d'aller avec var txtbox = document.getElementById ("txtLossRatioCurrentYear"); pour la deuxième zone de texte ... –
Mais j'ai besoin de généraliser cette fonction. Je veux envoyer différents textbox à la fonction javascript. –
des thats est acceptable, ce que vous êtes en train de faire, il utilise une directive préprocesseur
<%=txtLossRatioCurrentYear.ClientID%>
sera substitut à l'exécution par le produit ID du contrôle, en passant this.value
passera la référence du contrôle, mais vous pouvez toujours l'obtenir en utilisant le var txtbox = document.getElementById(controlid);
Vous pouvez envoyer la référence au répertoire de l'expéditeur ectement à votre js-fonction (ce ne est pas clairement question s'il y a une autre zone de texte):
onblur="CalculateLossRatio(this)"
function CalculateLossRatio(txtBox)
{
if(txtBox != null){
var text=txtBox.value;
}
}
est txtLossRatioCurrentYear une autre zone de texte que celui de l'événement onblur est tiré à partir? –