pastebin - collaborative debugging

pastebin is a collaborative debugging tool allowing you to share and modify code snippets while chatting on IRC, IM or a message board.

This site is developed to XHTML and CSS2 W3C standards. If you see this paragraph, your browser does not support those standards and you need to upgrade. Visit WaSP for a variety of options.

Javascript pastebin - collaborative debugging tool View Help


Posted by jachable on Fri 26 Oct 04:04
report abuse | View followups from Anonymous | download | new post

  1. /* Documentado creado el 19 de Octubre de 2007.
  2.  */
  3. var error='Debe elegir una opción válida';      //Mensaje de error
  4. var mostrar = false;     //Bandera para mostrar|ocultar la tabla de búsqueda avanzada
  5. var cuenta_producto = 0; //Número de productos en la lista
  6. var cons = 0;
  7.  
  8. var clave_producto = Array();   //Almacena las claves de los productos, impidiendo que se anexe más de una vez el mismo.
  9. var datos_producto = Array();
  10.  
  11. //set_origenpedido(valor) asigna al campo hidden temporal (tmp_pedido) el valor 0 contrato o 1 particular
  12. function set_origenpedido(valor){
  13.         var input, combo, tmp;
  14.         combo = document.getElementById('cliente_nombre');
  15.         input = document.getElementById('clave_contrato');
  16.  
  17.         if(valor == 0){
  18.                 combo.setAttribute('disabled', true);
  19.                 input.removeAttribute('disabled');
  20.         }
  21.                 else{
  22.                         input.value='';
  23.                         input.setAttribute('disabled', true);
  24.                         combo.removeAttribute('disabled');
  25.                 }
  26.                
  27.         tmp = document.getElementById('tmp_pedido');
  28.         tmp.value = valor;
  29.        
  30.         //Si es un contrato agregar buscar clave del cliente. Si es un particular remover clave del cliente.
  31.         var combo_box = document.getElementById('tipo_busqueda');
  32.         if(tmp.value == 0 && combo_box.options.length == 5){ //Agregar 
  33.                 var choice;
  34.                         choice = document.createElement('option');
  35.                         choice.value = 5;
  36.                         choice.appendChild(document.createTextNode('Clave del Cliente'));
  37.                         combo_box.appendChild(choice);                         
  38.         }
  39.                 else if(tmp.value == 1 && combo_box.options.length == 6){ //Quitar
  40.                         combo_box.removeChild(combo_box.lastChild);
  41.                 }
  42.                
  43.         return;
  44. }
  45.  
  46. //showHidden() Muestra u oculta la tabla de búsqueda avanzada
  47. function showHidden(){
  48.         var tabla_busqueda = document.getElementById('b_avanzada');
  49.  
  50.         if(!mostrar){
  51.                 mostrar = true;
  52.                 tabla_busqueda.style.display = 'block';
  53.         }
  54.                 else{
  55.                         mostrar = false;
  56.                         tabla_busqueda.style.display = 'none';
  57.                 }
  58.  
  59.         return;
  60. }
  61.  
  62. //reiniciaControles() Limpia los controles principales de búsqueda avanzada
  63. function reiniciaControles(){
  64.         var criterio = document.getElementById('criterio');
  65.         criterio.removeAttribute('value');
  66.         criterio.value = '';
  67.  
  68.         var combo_box = document.getElementById('resultado');
  69.         while(combo_box.childNodes.length > 0)
  70.                 combo_box.removeChild(combo_box.childNodes[0]);
  71.         var choice;
  72.                 choice = document.createElement('option');
  73.                 choice.appendChild(document.createTextNode('---SELECCIONE---'));
  74.                 combo_box.appendChild(choice);
  75.        
  76.         //limpiaPuntosEntrega();
  77.         activarAdd();
  78.         return;
  79. }
  80.  
  81. //buscarCriterio() Búsqueda Avanzada según el tipo seleccionado y el criterio escrito en la Tabla Productos con el script get_producto.
  82. function buscarCriterio(){
  83.         activarAdd();
  84.         var  tipo_busqueda = document.getElementById('tipo_busqueda').value;
  85.         var  criterio = document.getElementById('criterio').value;
  86.         if(tipo_busqueda != "" && tipo_busqueda != "---SELECCIONE---"){
  87.                 if(criterio != ""){
  88.                         if(tipo_busqueda == 5)
  89.                                 return alert('Aún no esta implementada la opción\nClave del Cliente');
  90.                         var ajaxReq = ajaxFunction();
  91.                         if(ajaxReq){
  92.                                 // Create a function that will receive data sent from the server
  93.                                 ajaxReq.onreadystatechange = function(){
  94.                                         if(ajaxReq.readyState == 4){
  95.                                                 if(ajaxReq.status == 200){
  96.                                         //Activese solo para debuguear
  97.                                                         //var valor     = ajaxReq.responseText;
  98.                                                         //alert(valor);
  99.                                                 var valor       = ajaxReq.responseXML.getElementsByTagName('evaluado')[0].firstChild.data;
  100.                                                 var mensaje     = ajaxReq.responseXML.getElementsByTagName('mensaje')[0].firstChild.data;
  101.  
  102.                                                         if(valor == 1){ //Existen Clientes
  103.                                                                 //alert(mensaje);                                                      
  104.                                                                 var xmlDoc = ajaxReq.responseXML;
  105.                                                                 var listaNombres = xmlDoc.getElementsByTagName('nombres')[0];
  106.                                                                 var nombresProductoXML = listaNombres.getElementsByTagName('nombre_producto');
  107.                
  108.                                                                 var listaClaves = xmlDoc.getElementsByTagName('claves')[0];
  109.                                                                 var clavesClienteXML = listaClaves.getElementsByTagName('clave_producto');
  110.                                                                 var nombre_producto = new Array();
  111.                                                                 var clave_producto = new Array();                                              
  112.                                                                 var currentState = null;
  113.                
  114.                                                                 for(var i=0; i< nombresProductoXML.length; i++){
  115.                                                                         currentState = nombresProductoXML[i];
  116.                                                                         nombre_producto[i] = currentState.childNodes[0].nodeValue;
  117.                                                                         currentState = null;
  118.                                                                         currentState = clavesClienteXML[i];
  119.                                                                         clave_producto[i] = currentState.childNodes[0].nodeValue;                                                      
  120.                                                                 }
  121.                                
  122.                                                         //Generar el combo
  123.                                                                 var combo_box = document.getElementById('resultado');                                                                                          
  124.                                                                 while(combo_box.childNodes.length > 0)
  125.                                                                         combo_box.removeChild(combo_box.childNodes[0]);
  126.                                                                 // Agrega algunas opciones:
  127.                                                                 var choice;
  128.                                                                         choice = document.createElement('option');
  129.                                                                         choice.appendChild(document.createTextNode('---SELECCIONE---'));
  130.                                                                         combo_box.appendChild(choice);                                           
  131.                                                                         for(var i=0; i < nombre_producto.length; i++){
  132.                                                                                 choice = document.createElement('option');
  133.                                                                                 choice.value = clave_producto[i];
  134.                                                                                 choice.appendChild(document.createTextNode(nombre_producto[i]));
  135.                                                                         combo_box.appendChild(choice);
  136.                                                                         }
  137.                                                         }
  138.                                                                 else{//No existen Productos
  139.                                                                         var combo_box = document.getElementById('resultado');   
  140.                                                                         while(combo_box.childNodes.length > 0)
  141.                                                                                 combo_box.removeChild(combo_box.childNodes[0]);
  142.                                                                         var choice;
  143.                                                                                 choice = document.createElement('option');
  144.                                                                                 choice.appendChild(document.createTextNode('---SELECCIONE---'));
  145.                                                                                 combo_box.appendChild(choice);
  146.                                                                         alert(mensaje);
  147.                                                                 }
  148.                                                 }//Valida Status
  149.                                         }//Valida State
  150.                                 }//onreadystatechange
  151.                                 criterio = encodeURI(criterio);
  152.                                 var aleatorio=Math.random();
  153.                                 ajaxReq.open("GET", "get_producto.php?act=1&tipo_busqueda="+tipo_busqueda+"&criterio="+criterio+"&rnd="+aleatorio, true);
  154.                                 ajaxReq.send(null);
  155.                         }//Valida Ajax
  156.                         else
  157.                                 alert("El Navegador no soporta llamados al objeto XMLHttpRequest");
  158.                 }//Valida Criterio y Tipo_Busqueda
  159.                 else
  160.                         return  alert("Debe escribir un criterio de búsqueda");
  161.         }//Valida Tipo_Busqueda
  162.                 else
  163.                         return  alert(error);
  164. }
  165.  
  166. //Activa el boton para agregar los puntos de entrega en función del cliente seleccionado.
  167. function activarAdd(){
  168.         var resultado =         document.getElementById('resultado').value;
  169.         var anexa_fila =        document.getElementById('anexa_producto');
  170.  
  171.         if(resultado != "" && resultado != "---SELECCIONE---"){
  172.                 anexa_fila.removeAttribute("disabled");
  173.         }
  174.                 else{
  175.                                 anexa_fila.setAttribute('disabled', true);
  176.                         }
  177. }
  178.  
  179. function getDatos(producto_clave){ //Cero (0) busca si la clave es válida, uno (1) crea la fila con la información de la BD /*accion, */
  180.         var ajaxReq = ajaxFunction();
  181.         if(ajaxReq){
  182.                 ajaxReq.onreadystatechange = function(){
  183.                         if(ajaxReq.readyState == 4){
  184.                                 if(ajaxReq.status == 200){      //Activese solo para debuguear
  185.                                 //var valor     = ajaxReq.responseText; alert(valor);
  186.                                 var valor       = ajaxReq.responseXML.getElementsByTagName('evaluado')[0].firstChild.data;
  187.                                 var mensaje     = ajaxReq.responseXML.getElementsByTagName('mensaje')[0].firstChild.data;
  188.  
  189.                                         if(valor == 1){ //Existe la Clave del producto
  190.                                                 //alert(mensaje);
  191.                                                 var claveXML    = ajaxReq.responseXML.getElementsByTagName('clave_producto')[0].firstChild.data;
  192.                                                 var nombreXML   = ajaxReq.responseXML.getElementsByTagName('nombre_producto')[0].firstChild.data;
  193.                                                 var umedidaXML  = ajaxReq.responseXML.getElementsByTagName('umedida_producto')[0].firstChild.data;
  194.                                                 var precioXML   = ajaxReq.responseXML.getElementsByTagName('precio_producto')[0].firstChild.data;
  195.                                                
  196. //---------------------- Inicia declaración de variables ---------------------------
  197.                                                 var col_nombre= Array('filaprod','producto_id','cantidad','descripcion','umedida','precio','importe', 'Quitar');
  198.                                                 var tabla='valores_producto';
  199.                                                 var valores_control =   document.getElementById(tabla); //tbody valores_producto
  200.                                                 var consecutivo = cons++;
  201.                                                 var id_control = cuenta_producto++;
  202. //---------------------- Termina declaración de variables ---------------------------
  203.                                                 var fila_control =      document.createElement("tr");
  204.                                                 fila_control.setAttribute('id',col_nombre[0]+consecutivo);
  205.                                        
  206.                                                 var columna_clave               = document.createElement('input');      //Tipo text
  207.                                                 var columna_cantidad    = document.createElement('input');      //Tipo text
  208.                                                 var columna_descripcion = document.createElement('input');      //Tipo text
  209.                                                 var columna_umedida     = document.createElement('input');      //Tipo text
  210.                                                 var columna_precio      = document.createElement('input');      //Tipo text
  211.                                                 var columna_importe     = document.createElement('input');      //Tipo text
  212.                                                 var btnBorrar =                 document.createElement('input');        //Tipo button
  213.                                                
  214.                                                 set_Atributos(columna_clave, col_nombre[1]+'[]', col_nombre[1]+id_control, claveXML,  8, 0);    //Columna de Clave
  215.                                                 columna_clave.onfocus= function(){ this.blur(); };
  216.                                                
  217.                                                 set_Atributos(columna_cantidad, col_nombre[2]+'[]', col_nombre[2]+id_control, 0,  4, 0);                //Columna de Cantidad
  218.                                                 columna_cantidad.onkeyup=
  219.                                                 function(){
  220.                                                         if(!isNaN(this.value) && this.value > 0){       //alert('Cantidad Válida para '+this.id);
  221.                                                                 this.value = parseInt(this.value,10)
  222.                                                                 calculaImporte(this.id);
  223.                                                         }
  224.                                                                 else{
  225.                                                                         var tam = this.id.charAt(this.id.length-1);
  226.                                                                         var importe = document.getElementById('importe'+tam);
  227.                                                                         importe.value = 0;
  228.                                                                         alert('Cantidad Inválida\nPor Favor escriba el # de productos');
  229.                                                                 }
  230.                                                 };
  231.                                                
  232.                                                 set_Atributos(columna_descripcion,  col_nombre[3]+'[]', col_nombre[3]+id_control, nombreXML, 20, 0);    //Columna de Descripción
  233.                                                 columna_descripcion.onfocus= function(){ this.blur(); };
  234.                                                
  235.                                                 set_Atributos(columna_umedida, col_nombre[4]+'[]', col_nombre[4]+id_control, umedidaXML,  10, 0);               //Columna de Unidad de Medida
  236.                                                 columna_umedida.onfocus= function(){ this.blur(); };
  237.                                                
  238.                                                 set_Atributos(columna_precio, col_nombre[5]+'[]', col_nombre[5]+id_control, precioXML,  6, 0)//Columna de Precio
  239.                                                 columna_precio.onfocus= function(){ this.blur(); };
  240.                                                
  241.                                                 set_Atributos(columna_importe, col_nombre[6]+'[]', col_nombre[6]+id_control, 0,  6, 0)//Columna de Importe
  242.                                                 columna_importe.onfocus= function(){ this.blur(); };
  243.                                                
  244.                                                 set_Atributos(btnBorrar,col_nombre[7]+'[]',col_nombre[7]+consecutivo,'Quitar', 6,2);    //Columna del botón Quitar
  245.                                                 btnBorrar.onclick= function(){ remove_fila(tabla, col_nombre[0]+consecutivo); }
  246.                                        
  247.                                                 fila_control.appendChild(crearColumna(columna_clave));          //Clave
  248.                                                 fila_control.appendChild(crearColumna(columna_cantidad));       //Cantidad
  249.                                                 fila_control.appendChild(crearColumna(columna_descripcion));//Descripción
  250.                                                 fila_control.appendChild(crearColumna(columna_umedida));        //Unidad de Medida
  251.                                                 fila_control.appendChild(crearColumna(columna_precio));         //Precio
  252.                                                 fila_control.appendChild(crearColumna(columna_importe));        //Importe
  253.                                                 fila_control.appendChild(crearColumna(btnBorrar));                      //Borrar
  254.                                                
  255.                                                 valores_control.appendChild(fila_control);
  256.  
  257.                                         }
  258.                                                 else{//No existe el Producto
  259.                                                         alert(mensaje);
  260.                                                 }
  261.                                 }//Valida Status
  262.                         }//Valida State
  263.                 }//onreadystatechange
  264.                 var aleatorio=Math.random();
  265.                 ajaxReq.open("GET", "get_producto.php?act=2&producto_clave="+producto_clave+"&rnd="+aleatorio, true);
  266.                 ajaxReq.send(null);
  267.         }//Valida Ajax
  268.         else
  269.                 alert("El Navegador no soporta llamados al objeto XMLHttpRequest");
  270.                
  271.         return;
  272. }
  273.  
  274. //addFila() Agrega los productos del pedido a la tabla TBODY valores_producto, recibe hotkey (false|true) anexo por clave o B. Avanz.
  275. function addFila(hotkey){
  276.         var arr_ = Array();
  277.         var producto;
  278.         arr_= clave_producto;
  279.        
  280.         if(hotkey){
  281.                 producto = document.getElementById('clave_producto').value;
  282.                 if(producto == '' || producto == ' ' || isNaN(producto))
  283.                         return alert('Debe escribir la clave del producto!!');
  284.         }
  285.            else{
  286.                    producto = document.getElementById('resultado').value;
  287.                    }
  288.  
  289.         var existe = false;
  290.         for(var i=0; i < arr_.length; i++){
  291.                 if(producto == arr_[i]){
  292.                         existe = true;
  293.                         break;
  294.                 }
  295.         }
  296.  
  297.         if(existe){
  298.                 alert('El elemento ya fue agregado, por favor ingrese uno diferente');
  299.                 return;
  300.         }
  301.                 else{
  302.                         add_Clave(producto,'producto'); //producto
  303.                         //Busqueda de datos consulta ajax
  304.                         getDatos(producto); //Crea fila de inputs con la información de la BD /*1, */
  305.                 }
  306.                
  307.         return;
  308. }
  309.  
  310. //set_Atributos() Establece los atributos del elemento creado, en este caso input
  311. function set_Atributos(input_pe, nombre, id, valor, tamanio, tipo){
  312.         var tipo_input;
  313.        
  314.         switch(tipo){
  315.                 case 0: tipo_input = 'text';
  316.                         break;
  317.                 case 1: tipo_input = 'hidden';
  318.                         break;
  319.                 case 2: tipo_input = 'button';
  320.                         break;
  321.                 default: alert('La opción no es válida');
  322.                         break;
  323.         }
  324.        
  325.         input_pe.setAttribute('type',tipo_input);
  326.         input_pe.setAttribute('name',nombre);
  327.         input_pe.setAttribute('id',id);
  328.         input_pe.setAttribute('value',valor);
  329.         input_pe.setAttribute('size',tamanio);
  330.  
  331.         return input_pe;
  332. }
  333.  
  334. //crearColumna() Crea una columna para los Inputs recibidos
  335. function crearColumna(elemento){
  336.         var columna = document.createElement("td");
  337.         columna.appendChild(elemento);
  338.         return columna;
  339. }
  340.  
  341. //remove_fila(tabla,  id_elem)
  342. function remove_fila(tabla, id_elem){
  343.         var cadena ='';
  344.         var tipo;
  345.  
  346.         switch(tabla){
  347.                 case 'valores_producto':    cadena = 'Producto';        tipo=0;
  348.                         break;
  349.                 default: alert('La opción no es válida');
  350.                         break;
  351.         }
  352.  
  353.         var valores_ =  document.getElementById(tabla); //tbody
  354.         var val_ = document.getElementById(id_elem);
  355.  
  356.         if(confirm('Desea Quitar este '+cadena+'\nAl presionar Aceptar será eliminado')){
  357.         //busqueda del valor a borrar
  358.                 if (val_.hasChildNodes()){
  359.                         var children = val_.childNodes;
  360.                         for (var i = 0; i < children.length; i++){
  361.                                 if(children[i].nodeType == 1){ //http://developer.mozilla.org/en/docs/DOM:element.nodeType                              //alert(children[i].nodeName);
  362.                                         if(children[i].hasChildNodes()){
  363.                                                 var td = children[i].childNodes;
  364.                                                 for (var j = 0; j < td.length; j++){    //alert(td[j].nodeName);        //Paso por INPUTS
  365.                                                         //alert('nombre: '+td[j].nodeName +'\ntipo: '+td[j].nodeType +'\nvalor: '+td[j].value+'\nid: '+td[j].id+'\nname: '+td[j].name);
  366.                                                         if(tipo == 0){
  367.                                                                 if(td[j].name == 'producto_id[]'){
  368.                                                                         remove_Clave(td[j].value,'producto');//alert('valor a buscar: '+td[j].value);
  369.                                                                 }
  370.                                                         }
  371.                                                 }//Recorrido por lo elementos de la fila (Inputs), tomando solo el valor del campo vehiculo_id o chofer_id
  372.                                         }//Si tiene hijos (columnas) los revisara uno por uno
  373.                                 }//Recorre los items de la fila solo si son de tipo Elemento
  374.                         }//Pasa el ID de la fila como parametro.
  375.                 }//Si tiene hijos entra
  376.         //fin busqueda
  377.  
  378.         valores_.removeChild(val_);
  379.         alert('Se ha borrado el elemento de la Tabla '+cadena);
  380.                                
  381.                 if(tipo == 0){
  382.                         cuenta_producto--;                                      //alert('cuenta producto:'+cuenta_producto);
  383.                 }
  384.                                        
  385.                 corrigeID(tabla);
  386.                
  387.         }
  388.                 else{
  389.                         alert('El elemento '+cadena+' No será borrado');
  390.                         }
  391.  
  392.         return;
  393. }
  394.  
  395. //add_Clave() Agregar la clave del vehiculo, chofer
  396. function add_Clave(clave, nombre_arreglo){
  397.         var i=0;
  398.         switch(nombre_arreglo){
  399.                 case 'producto':  i = clave_producto.length;    clave_producto[i]= clave;       //var arr_= clave_producto; //contenido
  400.                         break;
  401.                 default: alert('La opción no es válida');
  402.                         break;
  403.         }
  404.         return;
  405. }
  406.  
  407. //remove_Clave() Agregar la clave del productos
  408. function remove_Clave(clave, nombre_arreglo){
  409.         var i=0;
  410.         var existe=false;
  411.         var pos;
  412.         switch(nombre_arreglo){
  413.                 case 'producto':  var arr_= clave_producto;
  414.                         break;
  415.                 default: alert('La opción no es válida');
  416.                         break;
  417.         }
  418.  
  419.         var tmp = new Array();
  420.         for(i=0; i < arr_.length; i++){
  421.                 if(arr_[i] == clave){
  422.                         pos = i;
  423.                         existe = true;
  424.                         break;
  425.                 }
  426.         }
  427.  
  428.         if(existe){
  429.                 for(j=0, i=0; j < arr_.length; j++){
  430.                         if(j != pos){
  431.                                 tmp[i++]=arr_[j];
  432.                         }
  433.                 }
  434.                 clave_producto = tmp;
  435.         }
  436.  
  437.         return;
  438. }
  439.  
  440. /* Esta Función cambiará los ID del grupo pasado como parámetro donde 0.- valores_producto
  441.  * Los ID deben quedar en forma secuencial para que las funciones no tengan problemas para acceder a los datos y realizar las operaciones.
  442.  */
  443. //corrige_ID(tabla_valores)
  444. function corrigeID(tabla_valores){
  445.         var valores_ = document.getElementById(tabla_valores);
  446.         var nuevo_id = -1;
  447.         var tipo;
  448.         switch(tabla_valores){
  449.                 case 'valores_producto':  tipo=0;       break;
  450.                 default: alert('La opción no es válida'); break;
  451.         }
  452.  
  453.         if (valores_.hasChildNodes()){
  454.                 var children = valores_.childNodes;
  455.                 for (var i = 0; i < children.length; i++){
  456.                         if(children[i].nodeType == 1){ //http://developer.mozilla.org/en/docs/DOM:element.nodeType                              //alert(children[i].nodeName);
  457.                                 if(children[i].hasChildNodes()){
  458.                                         var tr = children[i].childNodes;
  459.                                         for (var j = 0; j < tr.length; j++){                    //alert(tr[j].nodeName);
  460.                                                 if(tr[j].hasChildNodes()){
  461.                                                         var ele = tr[j].childNodes;
  462.                                                         for (var k = 0; k < ele.length; k++){   //alert('nombre: '+ele[k].nodeName +'\ntipo: '+ele[k].nodeType +'\nvalor: '+ele[k].value+'\nid: '+ele[k].id+'\nname: '+ele[k].name);                                                           
  463.                                                                 if(ele[k].nodeType == 1){                       //alert(nuevo_id);
  464.                                                                         if(tipo == 0){
  465.                                                                                 if(ele[k].name == 'producto_id[]')
  466.                                                                                         ele[k].id =     'producto_id'+nuevo_id;
  467.                                                                                 if(ele[k].name == 'cantidad[]')
  468.                                                                                         ele[k].id = 'cantidad'+nuevo_id;
  469.                                                                                 if(ele[k].name == 'descripcion[]')
  470.                                                                                         ele[k].id = 'descripcion'+nuevo_id;
  471.                                                                                 if(ele[k].name == 'umedida[]')
  472.                                                                                         ele[k].id = 'umedida'+nuevo_id;
  473.                                                                                 if(ele[k].name == 'precio[]')
  474.                                                                                         ele[k].id = 'precio'+nuevo_id;
  475.                                                                                 if(ele[k].name == 'importe[]')                                                                                 
  476.                                                                                         ele[k].id = 'importe'+nuevo_id;
  477.                                                                         }
  478.                                                                 }//Cambio de IDs
  479.                                                         }//Recorrido de elementos Input
  480.                                                 }//Evalua si tiene hijos
  481.                                         }//Recorrido de elementos TD
  482.                                         nuevo_id++;
  483.                                 }//Evalua si tiene hijos
  484.                         }//Evalua si el nodo es de tipo elemento
  485.                 }//Recorrido de los hijos de valores_pe, valores_caseta, valores_vehiculo, valores_chofer
  486.                 //Se corrije el contador variable global
  487.                 if(tipo == 0)
  488.                         cuenta = nuevo_id;
  489.         }//Evalua si tiene hijos el Nodo
  490.  
  491.         return true;
  492. }
  493.  
  494. //calculaImporte(id_cantidad) recibe el ID del campo cantidad y a partir de este obtiene el precio (multiplica) y lo fija en importe
  495. function calculaImporte(id_cantidad){
  496.         var tam = id_cantidad.charAt(id_cantidad.length-1);
  497.         var cantidad = document.getElementById(id_cantidad);
  498.         var precio = document.getElementById('precio'+tam);
  499.         var importe = document.getElementById('importe'+tam);
  500.        
  501.         importe.value = precio.value * cantidad.value;
  502.        
  503.         return;
  504. }
  505.  
  506. //function validar_llenado() Comprueba que los importes sean mayor a cero y devuelve TRUE. Si no es asi envia un mensaje de error y devuelve FALSE
  507. function validar_llenado(){
  508.         var i, importe;
  509.         if(cuenta_producto > 0){
  510.                 for(i=0; i < cuenta_producto; i++){
  511.                         importe = document.getElementById('importe'+i);
  512.                         if(importe.value == 0){
  513.                                 alert('Debe escribir una cantidad para los productos');
  514.                                 return false;
  515.                         }
  516.                 }
  517.         }
  518.                 else{
  519.                         alert('Debe agregar productos a su pedido antes de guardar\nSi no desea guardar presione Cancelar');
  520.                         return false;
  521.                 }
  522.        
  523.         return true;
  524. }

Submit a correction or amendment below (click here to make a fresh posting)
After submitting an amendment, you'll be able to view the differences between the old and new posts easily.

Syntax highlighting:

To highlight particular lines, prefix each line with @@


Remember me so that I can delete my post