Foros del Web » Programando para Internet » Javascript »

No enfoca a un elmento??!!

Estas en el tema de No enfoca a un elmento??!! en el foro de Javascript en Foros del Web. con el siguiente codigo quiero que pase el foco a una caja de texto: Código PHP: < a href = 'javascript :;'  onclick = "enviaQuery('divResultado','myajax.php?opcion=borrar_itempr&i=$i&tipo=fac');document.form11.regal.focus();alert('document.form11.regal.value');\"><img src='images/trash.gif' border='0'></a>  a ...
  #1 (permalink)  
Antiguo 04/09/2009, 16:53
Avatar de zeuzft  
Fecha de Ingreso: junio-2009
Ubicación: peru
Mensajes: 358
Antigüedad: 14 años, 10 meses
Puntos: 2
Exclamación No enfoca a un elmento??!!

con el siguiente codigo quiero que pase el foco a una caja de texto:
Código PHP:
<a href='javascript:;' onclick="enviaQuery('divResultado','myajax.php?opcion=borrar_itempr&i=$i&tipo=fac');document.form11.regal.focus();alert('document.form11.regal.value');\"><img src='images/trash.gif' border='0'></a> 
a esta caja de txto:
Cita:
<td>
<input type='text' name='regal' class='form'>hola</input></td>
<td>
pero me sale este error:
JavaScript Error: 'document.form11.regal' es nulo o no es un objeto.
Alguien me puede ayudar hace 3 horas que viendo ese problema y no le encuentro solucion
  #2 (permalink)  
Antiguo 04/09/2009, 18:58
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: No enfoca a un elmento??!!

omitiendo la funcion enviarQuery y eliminando un caracter ilegal al final, el backslash, veras que funciona.
Código:
<form name="form11"> <a href='javascript:;' onclick="document.form11.regal.focus();alert('document.form11.regal.value');"><img src='images/trash.gif' border='0'></a>  
<input type='text' name='regal' class='form'>hola</input></form>
asegurate que el input este dentro del form.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #3 (permalink)  
Antiguo 05/09/2009, 09:22
Avatar de zeuzft  
Fecha de Ingreso: junio-2009
Ubicación: peru
Mensajes: 358
Antigüedad: 14 años, 10 meses
Puntos: 2
Exclamación Respuesta: No enfoca a un elmento??!!

lo que pasa es que todo esta dentro de un div:
Código PHP:
        <td colspan='3'>
            <div id='divResultado' name='divResultado' align='center'>
            <? 
            
if($pr_mon=='S')
            {
            echo
"<table width='100%'>
                        <tr><th class='combo0'>Cod</th><th class='combo0'>Tipo/Sub-tipo</th><th class='combo0'>Producto</th><th class='combo0'>Descripcion</th><th class='combo0'>Cant.</th><th class='combo0'>Prec(S/.)</th><th class='combo0'>Subtotal</th>
                        </tr>"
;
            
$total=0;
            for(
$i=0;$i<count($_SESSION['usuario']['carrito']);$i++) 
                { 
                foreach (
$_SESSION['usuario']['carrito'][$i] as $k => $v
                    { 
                    if(
$k=='codigo')
                        echo
"<tr><td class='texto8'>$v</td>";
                    if(
$k=='tiposubtipo')
                        echo
"<td class='texto8'>$v</td>";
                    if(
$k=='nombre')
                        echo
"<td class='texto8'>$v</td>";
                    if(
$k=='descripcion')
                        echo
"<td class='texto8'>$v</td>";
                    if(
$k=='cantidad')
                        echo
"<td class='texto8'><input type='text' name='cant$i' value='$v' class='form1' size='15' onkeypress=\"javascript:var key=window.event.keyCode;if (key==13) document.form11.precio$i.focus();\"></input></td>";
                    if(
$k=='precio')            
                        echo
"<td class='texto8'><input type='text' name='precio$i' class='form1' value='".number_format($v2'.'' ')."' class='form' size='15' onkeypress=\"javascript:var key=window.event.keyCode;document.form11.subtotal$i.focus();\" ></input></td>";
                    if(
$k=='subtotal')                
                        {
                        
$total+=$v;
                        echo
"<td class='texto8'><input type='text' name='subtotal$i' class='form1' value='".number_format($v2'.'' ')."' class='form' size='15'></input></td>
                        <td><a href='javascript:;' onclick=\"enviaQuery('divResultado','myajax.php?opcion=borrar_itempr&i=$i&tipo=fac');document.form11.regal.focus()\"><img src='images/trash.gif' border='0'></a></td></tr>"
;}
                    } 
                }
            echo
"<tr><td colspan='7' align='right' class='bordenaranja'><b>Total SIGV:  S/.".number_format($total/1.192'.'' ')."</b>&nbsp;&nbsp;&nbsp;<b>IGV:  S/.".number_format($total-($total/1.19), 2'.'' ')."</b>&nbsp;&nbsp;&nbsp;<b>Total:  S/.".number_format($total2'.'' ')."</b></td></tr></table>";
            }
            else
            {
            echo 
"<table width='100%'>
                        <tr><th class='combo0'>Cod</th><th class='combo0'>Tipo/Sub-tipo</th><th class='combo0'>Producto</th><th class='combo0'>Descripcion</th><th class='combo0'>Cant.</th><th class='combo0'>Prec(S/.)</th><th class='combo0'>Prec(US$.)</th><th class='combo0'>Subtotal(S/.)</th><th class='combo0'>Subtotal(US$.)</th>
                        </tr>"
;
            
$total=0;
            
$totald=0;
            for(
$i=0;$i<count($_SESSION['usuario']['carrito']);$i++) 
                { 
                foreach (
$_SESSION['usuario']['carrito'][$i] as $k => $v
                    { 
                    if(
$k=='codigo')
                        echo
"<tr><td class='texto8'>$v</td>";
                    if(
$k=='tiposubtipo')
                        echo
"<td class='texto8'>$v</td>";
                    if(
$k=='nombre')
                        echo
"<td class='texto8'>$v</td>";
                    if(
$k=='descripcion')
                        echo
"<td class='texto8'>$v</td>";
                    if(
$k=='cantidad')
                        echo
"<td class='texto8'><input type='text' name='cant$i' value='$v' class='form1' size='15' onkeypress=\"javascript:var key=window.event.keyCode;if (key==13) document.form11.precio$i.focus();\"></input></td>";
                    if(
$k=='precio')            
                        echo
"<td class='texto8'><input type='text' name='precio$i' class='form1' value='".number_format($v2'.'' ')."' class='form' size='15' onkeypress=\"javascript:var key=window.event.keyCode;if (key==13) document.form11.preciod$i.focus();\"></input></td>";
                    if(
$k=='preciod')            
                        echo
"<td class='texto8'><input type='text' name='preciod$i' class='form1' value='".number_format($v2'.'' ')."' class='form' size='15' onkeypress=\"javascript:var key=window.event.keyCode;if (key==13) document.form11.subtotal$i.focus();\"></input></td>";    
                    if(
$k=='subtotal')                
                        {
                        
$total+=$v;
                        echo
"<td class='texto8'><input type='text' name='subtotal$i' class='form1' value='".number_format($v2'.'' ')."' class='form' size='15'></input></td>";}
                    if(
$k=='subtotald')                
                        {
                        
$totald+=$v;
                        echo
"<td class='texto8'><input type='text' name='subtotald$i' class='form1' value='".number_format($v2'.'' ')."' class='form' size='15'></input></td>
                        <td><a href='javascript:;' onclick=\"enviaQuery('divResultado','myajax.php?opcion=borrar_itempr&i=$i&tipo=fac&tc='+document.form11.tc.value);document.form11.regal.focus()\"><img src='images/trash.gif' border='0'></a></td></tr>"
;}
                    } 
                }    
            echo
"<tr><td colspan='9' align='right' class='bordenaranja'><b>Total SIGV:  S/.".number_format($total/1.192'.'' ')."</b>&nbsp;&nbsp;&nbsp;<b>IGV:  S/.".number_format($total-($total/1.19), 2'.'' ')."</b>&nbsp;&nbsp;&nbsp;<b>Total:  S/.".number_format($total2'.'' ')."</b></td></tr>
            <tr><td colspan='9' align='right' class='bordenaranja'><b>Total SIGV:  US$. "
.number_format($totald/1.192'.'' ')."</b>&nbsp;&nbsp;&nbsp;<b>IGV:  US$. ".number_format($totald-($totald/1.19), 2'.'' ')."</b>&nbsp;&nbsp;&nbsp;<b>Total:  US$.".number_format($totald2'.'' ')."</b></td></tr></table>";
            }
?>
            </div>
        </td>
y se supone que al borrar me hace el enfoque; el otro elemento esta dentro del form pero mas abajo:
Código PHP:
                    <td>
                        <
b>Regalos:</b>                    </td>
                    <
td>
                        <
input type='text' name='regal' class='form' value='123' onfocus="enviaQuery('divmuestra','myajax.php?opcion=verdolares');"></input></td>
                    <
td
  #4 (permalink)  
Antiguo 05/09/2009, 11:26
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: No enfoca a un elmento??!!

no te puedo ayudar mucho porque no tengo idea de lo que genera el codigo php y tampoco tengo idea de la estructura de tu documento y formulario. en todo caso, el error te esta indicando que regal no es un elemento en el formulario form11. asegurate que el elemento tenga un name y que éste este dentro del formulario. tambien recuerda que javascript es sensible a la capitalizacion, de modo que los nombres que estas usando en tu codigo deben coincidir con los nombres en los atributos name de HTML.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #5 (permalink)  
Antiguo 05/09/2009, 15:02
Avatar de zeuzft  
Fecha de Ingreso: junio-2009
Ubicación: peru
Mensajes: 358
Antigüedad: 14 años, 10 meses
Puntos: 2
Respuesta: No enfoca a un elmento??!!

ok; gracias igual; pero a ver si me puedes ver esto; digamos que yo tengo un formulario y quiero editar un campo; cuando clic en ese campo me aparece una ventana emergente que cuando guarde me regrese en un foco; pero no realiza el foco; no me arroja errores:
Cita:
<script>
function enviar_datos_proforma(){
window.opener.document.form11.enfocar.focus();
}
self.close()
</script>
  #6 (permalink)  
Antiguo 05/09/2009, 20:16
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: No enfoca a un elmento??!!

el primer problema es que estas dando informacion incompleta. se entiende que el codigo esta bien escrito, sintaxticamente. el error puede ser que estas haciendo referencia incorrecta, o pudiera ser otra cosa. verifica la consola de error, preferiblemente en cualquier navegador que no sea iexplorer. no que iexplorer sea malo, sino que no es muy comodo la consola de iexplorer ni tampoco provee suficiente informacion.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #7 (permalink)  
Antiguo 06/09/2009, 08:23
Avatar de zeuzft  
Fecha de Ingreso: junio-2009
Ubicación: peru
Mensajes: 358
Antigüedad: 14 años, 10 meses
Puntos: 2
Respuesta: No enfoca a un elmento??!!

ok; gracias por la ayuda
  #8 (permalink)  
Antiguo 10/09/2009, 09:41
Avatar de zeuzft  
Fecha de Ingreso: junio-2009
Ubicación: peru
Mensajes: 358
Antigüedad: 14 años, 10 meses
Puntos: 2
Respuesta: No enfoca a un elmento??!!

Lo unico que pude hacer fue pasar el foco a otro lado; y dejar la consulta del QUery ya que ambas opciones no me funciona; o bien me pasa el foco y nunca me realiza la consulta; o bien realiza la consulta pero nunca pasa el foco; prefiero lo segundo. asi que igual gracias por la ayuda.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 17:35.