elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Usando Git para manipular el directorio de trabajo, el índice y commits (segunda parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web (Moderador: #!drvy)
| | |-+  Problemas con if(document.getElementById("").value=="1") en javascript
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 Ir Abajo Respuesta Imprimir
Autor Tema: Problemas con if(document.getElementById("").value=="1") en javascript  (Leído 4,885 veces)
jabedoya

Desconectado Desconectado

Mensajes: 26


Ver Perfil
Problemas con if(document.getElementById("").value=="1") en javascript
« en: 21 Mayo 2014, 16:38 pm »

Buen día para todos

Tengo un inconveniente con esta sentencia if(document.getElementById("ctl00$ContPlace$hddVerObservaciones").value=="1")

en Internet explore me funciona correctamente pero en CHROME MOZILLA y otros navegadores tengo problemas
Adjunto imagen



Ayedenem con este error.

Muchas gracias


En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: Problemas con if(document.getElementById("").value=="1") en javascript
« Respuesta #1 en: 22 Mayo 2014, 01:37 am »

da más información... muestra el segmento del código... algo por donde empezar a ayudarte... lo primero que parece es que no está capturando el id, pero con tan poca información no se puede saber que pasa


En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
jabedoya

Desconectado Desconectado

Mensajes: 26


Ver Perfil
Re: Problemas con if(document.getElementById("").value=="1") en javascript
« Respuesta #2 en: 22 Mayo 2014, 02:09 am »

Buena tarde

Adjunto codigos
lo primero que hago es declarar en el archivo aspx

Código
  1. <asp:Content ID="Content1" ContentPlaceHolderID="ContPlace" Runat="Server">
  2. <input id="hddCiudadLocal" type="hidden" runat="server" />
  3. <input id="hddValorMinimoPedido" type="hidden" runat="server" />
  4. <input id="hddVerObservaciones" type="hidden" runat="server" />
  5. <input id="hddOperacion" type="hidden" runat="server" />
  6. <input id="hddPeriodo" type="hidden" runat="server" />
  7. <input id="hddDetallePer" type="hidden" runat="server" />
  8. <input id="hddCcGravadoIVA" type="hidden" runat="server" />
  9. <input id="hddFechaPedido" type="hidden" runat="server" />
  10. <input id="hddClicGuardar" type="hidden" runat="server" />
  11. <input id="hddSubtotal" type="hidden" runat="server" />
  12. <input id="hddTotal" type="hidden" runat="server" />
  13. <input id="hddTotalIVA" type="hidden" runat="server" />
  14. <input id="hddPedido" type="hidden" runat="server" />
  15. <input id="hddCcostos" type="hidden" runat="server" />
  16. <input id="hddDivision" type="hidden" runat="server" />
  17. <input id="hddRegional" type="hidden" runat="server" />
  18. <input type="hidden"  id ="hddProductosSelec" runat="server" />
  19.  

Luego llamo el javascript que lo tengo en un archivo pedidos.js desde la pagina master
Código
  1. <script language="javascript" src="../script/pedidos/pedidos.js"></script>

Código
  1. function check(txtCantidad,idProducto,Indice, bolPptoCantidad,cantidad,valor,iva, campoResultado){
  2.  
  3. var txtCantidadtemp;
  4.  if(bolPptoCantidad=="1"){
  5.    if(txtCantidad.value>cantidad){
  6.       txtCantidad.focus();
  7.       txtCantidad.select();
  8.       txtCantidad.value = " ";
  9.  
  10.       alert("Esta sobrepasando el presupuesto asignado");
  11.  
  12.  
  13.       return false;
  14.     }
  15.  }
  16.  
  17.        if(document.getElementById("ctl00$ContPlace$hddVerObservaciones").value=="1"){
  18.             //elimina los puntos y las comas          
  19.             Subtotal = document.getElementById("ctl00$ContPlace$txtSubtotal").value;
  20.             while(Subtotal.indexOf(",") > 0){
  21.               Subtotal = Subtotal.replace(",","");
  22.              }
  23.         while(Subtotal.indexOf(".") > 0){
  24.               Subtotal = Subtotal.replace(".","");
  25.         }
  26.  
  27.         totalIVA  = document.getElementById("ctl00$ContPlace$txtIVA").value;
  28.         while(totalIVA.indexOf(",") > 0){
  29.               totalIVA = totalIVA.replace(",","");
  30.             }
  31.  
  32.         while(totalIVA.indexOf(".") > 0){
  33.               totalIVA = totalIVA.replace(".","");
  34.         }
  35.         //fin eliminar puntos y comas
  36.     }
  37.  
  38.  
  39.  if(productos[Indice]!=null){
  40.     //alert(productos[Indice].toString());
  41.     var cantidadAnterior = productos[Indice].toString().split("|")  
  42.     if(cantidadAnterior.length>0){
  43.        if(isNaN(parseInt(txtCantidad.value)))
  44.           txtCantidadtemp = 0;
  45.           else
  46.           txtCantidadtemp = parseInt(txtCantidad.value);
  47.  
  48.           //txtCantidad.value = "0";
  49.         Subtotal =parseFloat(Subtotal) - (cantidadAnterior[1] * valor  - txtCantidadtemp * valor);
  50.         totalIVA= parseFloat(totalIVA) - ((cantidadAnterior[1] * valor * (iva/100))  - (txtCantidadtemp * valor *(iva/100)));
  51.         totalPedido=parseFloat(Subtotal) + parseFloat(totalIVA) ;
  52.  
  53.         if(document.getElementById("ctl00$ContPlace$hddVerObservaciones").value=="1"){
  54.            document.getElementById("ctl00$ContPlace$txtSubtotal").value=  formatNmb(Subtotal.toString());
  55.            document.getElementById("ctl00$ContPlace$txtIVA").value= formatNmb(totalIVA.toString());
  56.            document.getElementById("ctl00$ContPlace$txtTotal").value=formatNmb(totalPedido.toString());              
  57.            document.getElementById("ctl00$ContPlace$txtSubtotal").acceptchanges
  58.         }
  59.       }else{
  60.       /*
  61.            Subtotal = parseFloat(document.getElementById("ctl00$ContPlace$txtSubtotal").value) + txtCantidad.value * valor;
  62.            totalIVA= parseFloat(document.getElementById("ctl00$ContPlace$txtIVA").value) + txtCantidad.value * valor*(iva/100);
  63.            totalPedido=parseFloat(document.getElementById("ctl00$ContPlace$txtSubtotal").value) + parseFloat(document.getElementById("ctl00$ContPlace$txtIVA").value) ;
  64.            
  65.            document.getElementById("ctl00$ContPlace$txtSubtotal").value= formatNmb(Subtotal.toString());
  66.           document.getElementById("ctl00$ContPlace$txtIVA").value= formatNmb(totalIVA.toString());
  67.           document.getElementById("ctl00$ContPlace$txtTotal").value=formatNmb(totalPedido.toString());          
  68.           */
  69.       }
  70.   }else{  
  71.   /*
  72.       Subtotal =parseFloat(document.getElementById("ctl00$ContPlace$txtSubtotal").value) + txtCantidad.value * valor;
  73.       totalIVA= parseFloat(document.getElementById("ctl00$ContPlace$txtIVA").value) + txtCantidad.value * valor*(iva/100);
  74.       totalPedido=parseFloat(document.getElementById("ctl00$ContPlace$txtSubtotal").value) + parseFloat(document.getElementById("ctl00$ContPlace$txtIVA").value) ;
  75.      
  76.       document.getElementById("ctl00$ContPlace$txtSubtotal").value= formatNmb(Subtotal.toString());
  77.       document.getElementById("ctl00$ContPlace$txtIVA").value= formatNmb(totalIVA.toString());
  78.       document.getElementById("ctl00$ContPlace$txtTotal").value=formatNmb(totalPedido.toString());
  79.      
  80.       */
  81.  
  82.   }
  83.  
  84.  
  85.  productos[Indice]=idProducto + "|" + txtCantidad.value;      
  86.  totalItem = txtCantidadtemp * valor
  87.  //campoResultado.value =totalItem;
  88.  campoResultado.value = formatNmb(totalItem.toString());  
  89.  //CalcularValores(Indice);
  90. }
  91.  

los parametros de input se los envio desde programacion asi
Código
  1. case "buscarProductos":          
  2.                hddVerObservaciones.Value = "0";
  3.  
  4. break;
  5. case "Adicionar":
  6.                hddVerObservaciones.Value = "1";
  7. break;
  8.  



el problema esta en que cuando ingreso con mozilla o chrome en este codigo me genera error
Código
  1. if(document.getElementById("ctl00$ContPlace$hddVerObservaciones").value=="1")
 

me genera el error que ya mostré en la pregunta  pero en explorer no hay ningun problema.

Muchas gracias
En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: Problemas con if(document.getElementById("").value=="1") en javascript
« Respuesta #3 en: 22 Mayo 2014, 02:35 am »

el asunto es que el id "ctl00$ContPlace$hddVerObservaciones" no existe realmente, debe ser algo puntual de microsoft que tiende a violar mucho los standards, la forma correcta sería tal cual el id contenido en el input es decir, solo "hddVerObservaciones"

con eso debería bastar, si tienes múltiples "hddVerObservaciones" se comportarán como array aunque no es apropiado usar múltiples elementos con el mismo id

así está establecido en el standard
http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/core.html
En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
jabedoya

Desconectado Desconectado

Mensajes: 26


Ver Perfil
Re: Problemas con if(document.getElementById("").value=="1") en javascript
« Respuesta #4 en: 22 Mayo 2014, 02:47 am »

seria así if(document.getElementById("hddVerObservaciones").value=="1")

Mañana lo probare en el código a ver si funciona y te cuento aunque no recuerdo si lo había puesto así antes  y me salia lo mismo.

Muchas Gracias
En línea

jabedoya

Desconectado Desconectado

Mensajes: 26


Ver Perfil
Re: Problemas con if(document.getElementById("").value=="1") en javascript
« Respuesta #5 en: 22 Mayo 2014, 14:35 pm »

Hola

Probé el código así

Código
  1. if(document.getElementById("hddVerObservaciones").value=="1")

y asi

Código
  1. if(document.getElementById("hddVerObservaciones")=="1")



Y tampoco me funciono si gue saliendo lo mismo Uncaught Typerror: Cannot read property'value' of null.

No se que ponerle ya.
En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: Problemas con if(document.getElementById("").value=="1") en javascript
« Respuesta #6 en: 22 Mayo 2014, 15:12 pm »

estas seguro que el elemento esta apareciendo en el navegador? (presiona ctrl +u para ver el código fuente y usa ctrl+f para buscar "hddVerObservaciones" y confirmar que existe exactamente con ese nombre)

porque el getElementById esta bien y me corre bien creando un elemento de ese nombre
En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
jabedoya

Desconectado Desconectado

Mensajes: 26


Ver Perfil
Re: Problemas con if(document.getElementById("").value=="1") en javascript
« Respuesta #7 en: 22 Mayo 2014, 16:06 pm »

Claro amigo eso era mire como aparecia el codigo

Código
  1. <input name="ctl00$ContPlace$hddVerObservaciones" type="hidden" id="ctl00_ContPlace_hddVerObservaciones" />
  2.  

Mil gracias ya lo corregi.

En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: Problemas con if(document.getElementById("").value=="1") en javascript
« Respuesta #8 en: 22 Mayo 2014, 23:50 pm »

el id aparece con underscores y no con $ como lo estabas intentando, usa los uderscores, si no usas jquery y selectores tipo css
En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
jabedoya

Desconectado Desconectado

Mensajes: 26


Ver Perfil
Re: Problemas con if(document.getElementById("").value=="1") en javascript
« Respuesta #9 en: 23 Mayo 2014, 05:16 am »

Ya lo logre gracias a tu ayuda.

Muchas gracias
En línea

Páginas: [1] 2 Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines