PHP - Ejecutar una form desde javascript

   
Vista:

Ejecutar una form desde javascript

Publicado por Pablo (39 intervenciones) el 01/05/2014 12:03:36
Hola amigos del foro estoy intentando hacer ejecutar un formulario en automatico con javascript y no logro hacerlo funcionar intente de varias maneras y no lo logré. Espero que alguien tenga una buena idea sobre esto.
Gracias por la ayuda
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<html>
<head>
<script>
function initialize() {
var v1 = document.forms['form_validar'].valor1
var v2 = document.forms['form_validar'].valor2
if (v1 > v2){
// supuestamente con este codigo tendría que ejecutar formulario pero no funciona
document.forms['form_validar'].submit;
}else{
alert("v1 es menor o igual que v2");
}
setInterval("initialize()", 1000);
</script>
</head>
<body>
<form action="variableshtml.php"  return false" id="form_validar" name="form_ruta" method="POST" class="form_validar">
<INPUT id="valor1" name="valor1"  value="" />
<INPUT id="valor2" name="valor2"  value="" />
<input type="submit" id="submit" name="submit" value="Envia"/>
</form>
</body>
</html>
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve

Ejecutar una form desde javascript

Publicado por xve (5520 intervenciones) el 01/05/2014 19:44:12
Hola Pablo, no entiendo muy bien tu código...

primero, tienes que cerrar la función, que no la tienes cerrada...

luego, hace un submit cuando la primera variable es mas grande que la segunda, pero si pulsas el botón "Envia" también haces el submit...

No entiendo muy bien que quieres hacer... nos puedes comentar con mas detalle?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Ejecutar una form desde javascript

Publicado por Pablo (39 intervenciones) el 01/05/2014 20:37:07
Hola xve: Disculpá sino fui muy claro. No entiendo tu primera pregunta, no tengo que cerrar nada, quiero un codigo simple que cuando se cumple una condicion en este caso v1 > v2, hace funcionar la form automaticamente enviando las variables post a variableshtml.php "olvidate el submit que puse porque esta de mas ya que debe funcionar sin deber pulsar nada. Gracias por tu interes
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve

Ejecutar una form desde javascript

Publicado por xve (5520 intervenciones) el 01/05/2014 21:50:48
Hola Pablo, con el cierre, me refiero a "}"... como no lo tienes bien tabulado no lo ves...

Haber que te parece este código... creo que hace lo que quieres.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<!DOCTYPE html>
<head>
<script>
function initialize() {
    var v1 = parseInt(document.getElementById("valor1").value);
    var v2 = parseInt(document.getElementById("valor2").value);
    console.log(v1);
    if (v1 > v2){
        document.forms['form_validar'].submit();
    }else{
        alert("v1 es menor o igual que v2");
    }
}
</script>
</head>
<body>
<form action="variableshtml.php" name="form_validar" name="form_ruta" method="POST" class="form_validar">
    <INPUT id="valor1" name="valor1"  value="" onkeyup="initialize()" />
    <INPUT id="valor2" name="valor2"  value="" onkeyup="initialize()" />
</form>
</body>
</html>

Coméntanos, ok?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Ejecutar una form desde javascript

Publicado por Pablo (39 intervenciones) el 01/05/2014 23:49:44
Hola xve: Soy muy agradecido por las ayudas que dan y respondo siempre para mostrar las mejorias. En el caso de tu codigo no es propio lo que necesito, ya que se ejecuta solo cuando tocas la text por la condicion onkeyup es claro que reemplazando con action se soluciona, ademas quería utilizar setinterval asi funciona en un tiempo determinado el problema que este trabaja solo con segundos, en fin un poco de cosas para que funcione como uno quiere. Gracias a vos
me diste una idea bastante buena para poder mejorarla. En estos dias vuelvo a escribir para mostrarte
Pablo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve

Ejecutar una form desde javascript

Publicado por xve (5520 intervenciones) el 02/05/2014 08:43:23
Gracias por comentarlo Pablo... ya nos mostraras al final como ha terminado...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Ejecutar una form desde javascript

Publicado por pablo (39 intervenciones) el 02/05/2014 14:02:08
Hola vve te escribo antes de lo pactado pues hice una tontera de variacion de tu codigo agregando setinterval asi probar el $_POST['valor1'] y el 2 temporizado y funciona de maravillas pero al agregar una form mas o una condicion "if (isset($_POST['submit'])){". Con una de esas dos cosas por separado no funciona. Es posible solucionarlo.
Gracias

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
<?php
//if (isset($_POST['submit'])) {
if (isset($_POST['valor1']) & (isset($_POST['valor2']))) {
$v1 = $_POST['valor1'];
$v2 = $_POST['valor2'];
$mensaje = "$v1 $v2";
}
//}
?>
<!DOCTYPE html>
<head>
<script>
function initialize() {
    var v1 = parseInt(document.getElementById("valor1").value);
    var v2 = parseInt(document.getElementById("valor2").value);
    console.log(v1);
    if (v1 > v2){
        document.forms['form_validar'].submit();
    }else{
        alert("v1 es menor o igual que v2");
    }
}
setInterval("initialize()",10000);
</script>
</head>
<body>
<form action="map15.php" name="form_validar" name="form_ruta" method="POST" class="form_validar">
    <INPUT id="valor1" name="valor1"  value="24" action="initialize()"/>
    <INPUT id="valor2" name="valor2"  value="12" action="initialize()" />
<?php
if(isset($mensaje)) {
    echo $mensaje;
    unset($mensaje);
}
?>
</form>
 
<form onsubmit="validar(); return false"  return false" id="form_validar" action="#" name="form_validar" >
<input type="submit" id="validar" name="validar" value="Enviar"/>
</form>
</body>
</html>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve

Ejecutar una form desde javascript

Publicado por xve (5520 intervenciones) el 02/05/2014 16:48:51
Hola Pablo, esta linea es erronea!!!! mira lo que te he marcado en negrita!!!
[code]<form onsubmit="validar(); return false" return false" id="form_validar" action="#" name="form_validar" >/code]

El problema que tienes, es que los dos formularios tienen el mismo nombre y id... por eso no te funciona... cámbiale el nombre y id.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Ejecutar una form desde javascript

Publicado por Pablo (39 intervenciones) el 10/05/2014 16:06:44
Hola xve: Como dije, lo prometido es deuda les mandó a nuestros amigos del foro unas líneas que cambiando de muy poco uno puede controlar automáticamente la gestión de una página. Saludos
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
<html><head><title>Timer con Javascript</title>
<script type="text/javascript">
    var        Controllo_Timer = null;
    var        Contador = document.getElementById("Oggeto").value;
    function Inizia_Timer() {
if (document.forms['timer'].Oggeto.value!=="") {
        Contador = document.getElementById("Oggeto").value;
        Actualizar_Texto_Status_Timer(Contador);
        Controllo_Timer = window.setInterval('Mi_Timer()', 1000);
}
    }
    function Ferma_Timer() {
        if(Controllo_Timer!=null) {
            window.clearInterval(Controllo_Timer);
            Controllo_Timer = null;
            Actualizar_Texto_Status_Timer("Timer fermo");
        }
    }
    function Actualizar_Texto_Status_Timer(Texto) {
        document.getElementById("Status_Timer").innerHTML = Texto;
    }
    function Mi_Timer() {
        Contador--;
Actualizar_Texto_Status_Timer(Contador);
  if (Contador==-1) {
      Contador = document.getElementById("Oggeto").value;
        Actualizar_Texto_Status_Timer(Contador);
   }
    }
window.onload=Inizia_Timer;
 
</script>
</head>
<body onload="Inizia_Timer()">
<div id="Status_Timer">Timer detenido</div>
<br>
<br>
<form name="timer" action="map33.php" method="post" class='timer'>
<input type="button" value="Iniziare Timer" onclick="Inizia_Timer()">
<input type="button" value="Fermare Timer" onclick="Ferma_Timer()">
<p><label>Imposta timer
<select id="Oggeto" name="Oggeto" onchange="MM_jumpMenu('parent',this,0)"></TD>
 
<option id="Oggeto">10</option>
<option id="Oggeto">20</option>
<option id="Oggeto">30</option></select></label></p>
<input type="submit" id="jua" name="jua" value="Invia"/>
</FORM>
</body></html>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve

Ejecutar una form desde javascript

Publicado por xve (5520 intervenciones) el 11/05/2014 10:48:10
gracias por compartirlo Pablo!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar