Pregunta

En un ASP: control ListView, tengo una casilla de verificación para cada fila. Cada fila representa un producto con un precio correspondiente. Quiero que el cliente seleccione uno o más productos y calcula un lado total del cliente precio.

Hasta ahora, he utilizado el código siguiente, pero no funciona:

<asp:CheckBox ID="CheckBox" 
              runat="server" 
              Text="" 
              Checked='<%# Convert.ToBoolean(Eval("Selected")) %>'
              onchange="changeTotal(this, <%# Eval("Price")) %>)"
/>

Tengo una función de JavaScript changeTotal (árbitro, valor) que debe determinar si el producto se acaba de seleccionar y añadir / restar el precio del producto a partir de un total.

El problema es la asignación de funciones JavaScript en la definición CheckBox - lo que está mal con este enfoque? Por qué no puedo asignar un precio estático para la función de JavaScript? Cuando quito la parte <%# Eval("Price")) %> de la casilla de verificación, el código se compila sin errores.

¿Fue útil?

Solución

Cambiar los comillas dobles en el onchange de comillas simples.

Otros consejos

<script language="javascript" type="text/javascript">
 function validatecheckbox(mode)
 {
 //alert('mode' + mode);
 //mode : 1  From : chkdeRegister
 //mode : 2  From : chkcancel
  var chkdeRegister = document.getElementById ("<%=chkdeRegister.ClientID%>"); 
  var chkcancel = document.getElementById("<%=chkcancel.ClientID%>");

  //alert('chkdeRegister: ' + chkdeRegister.checked);
  //alert('chkcancel: ' + chkcancel.checked);
  if(mode==1)
  {
    if(chkdeRegister.checked)
     {
      chkcancel.checked=false;
     }
  }
  else
  {
   if(chkcancel.checked)
     {
      chkdeRegister.checked=false;
     }
  }
 }
</script>
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top