2012-08-23 16 views
5

Hola a todos, estoy escribiendo el cálculo de los controles del cuadro de texto varius asp. Quiero que mi cálculo se realice con el evento de pulsación de tecla. A continuación el código que estoy utilizando pero no funciona el archivo¿Cómo hacer el evento de pulsación de tecla del cuadro de texto asp?

página .aspx

<asp:TextBox ID="txtMaintCost onkeypress="calculateFinanceDetail(); return false;" runat="server"></asp:TextBox> 

Js

function calculateFinanceDetail() { 
      var txtMaintCost = $('input[id$=txtMaintCost]').val(); 
      var txtInstallCost = $('input[id$=txtInstallCost]').val(); 
      var txtFreightCost = $('input[id$=txtFreightCost]').val(); 
} 

no es llamar a la función JavaScript en el evento de pulsación de tecla ... Si alguien tiene alguna idea de lo por favor, ayúdenme en esto ...

Respuesta

6

Falta " al final de la id del cuadro de texto.

Cambio

<asp:TextBox ID="txtMaintCost onkeypress="calculateFinanceDetail(); return false;" runat="server"></asp:TextBox> 

Para

<asp:TextBox ID="txtMaintCost" onkeypress="calculateFinanceDetail(); return false;" runat="server"></asp:TextBox> 

Trate de usar el ClientID de controles de servidor. Es posible que no tenga static ids para los controles del lado del servidor. No tiene que usar comodines si tiene identificadores fijos.

function calculateFinanceDetail() { 
     var txtMaintCost = $('input[id=<%=txtMaintCost.ClientID%>]').val(); 
     var txtInstallCost = $('input[id=<%=txtInstallCost.ClientID%>]').val(); 
     var txtFreightCost = $('input[id=<%=txtFreightCost.ClientID%>]').val(); 
} 
5

Faltan citas aquí ID="txtMaintCost onkeypress=", debería ser ID="txtMaintCost" "onkeypress="

Cuestiones relacionadas