[Resuelto] mostrar un numero nuevo de telefono al hacer click

Iniciado por tecasoft, 11 Octubre 2015, 13:12 PM

0 Miembros y 1 Visitante están viendo este tema.

tecasoft

Código (javascript) [Seleccionar]

var i = $('#numeros_telefono').size() + 1;

esto que haria, es decir el size(es tamaño) que valor tendria, etc, para pasarle por 'name'? ademas se incrementaria en 1 cada campo 'name', es decir como quedaria el campo name, gracias, siempre he pensado que con jquery se hace mejor, mas intuitivo jejejej
http://www.tecasoft.com Un ninja del hacking etico, programacion en html5, css3, javascript, jquery, php, python, c/c++, ensamblador, ingenieria reversa,a auditorias de seguridad, pentesting, exploits

#!drvy

El código que te he puesto funciona.. comprueba que envíes bien tus datos y los tengas bien nombrados ademas de que los envias por POST.

HTML:
Código (html4strict) [Seleccionar]
<form action='' method='POST'>
   <input type='text' name='nombre' value='' placeholder='Nombre'>
   <div id='numeros_de_telefono'>
       <input type='button' id='add_num' value='Añadir otro telefono'>
       <input type='text' name='num[]' placeholder='Telefono' value=''>
   </div>
   <input type='submit' value='Enviar'>
</form>


JS:
Código (javascript) [Seleccionar]
document.getElementById('add_num').onclick = function(){
   var input = document.createElement('input');
   input.type = 'text';
   input.name = 'num[]';
   input.placeholder = 'Otro telefono';
   input.value = '';
   document.getElementById('numeros_de_telefono').appendChild(input);
}


PHP:
Código (php) [Seleccionar]
<?php
if(!empty($_POST)){

    echo 
'Nombre: ',$_POST['nombre'];
    echo 
'<br> Telefonos: ';

    foreach(
$_POST['num'] as $numero){
        echo 
$numero,', ';
    }
}
?>


Resultado:


Al enviar:
Nombre: Juan
Telefonos: 123, 456, 789,


DEMO:
http://phpfiddle.org/lite/code/tij4-9kr4 (Dale al botón Run)

Saludos

MinusFour

No te funciona porque tienes:

Código (javascript) [Seleccionar]

    input.name = 'num'+ixc;


Cuando debería ser:

Código (javascript) [Seleccionar]

    input.name = 'num[]';

tecasoft

pero como podria hacer para eliminarlo asi con el anterior codigo, es decir como podria agregarle un remove(eliminar) linea que sale:

Código (javascript) [Seleccionar]

$(function() {
        var scntDiv = $('#p_scents');
        var i = $('#p_scents p').size() + 1;

        $('#addScnt').live('click', function() {
                $('<p><label for="p_scnts">Telefono:<input type="text" id="p_scnt" size="20" name="pscnt'+ i +'" value="" placeholder="Input Value" />Nombre:<input type="text" id="p_scnt" size="20" name="pscnt_nombre'+ i +'" value="" placeholder="Input Value" /></label>Apellidos:<input type="text" id="p_scnt" size="20" name="pscnt_apellidos'+ i +'" value="" placeholder="Input Value" /></label> <a href="#" id="remScnt">Eliminar</a></p>').appendTo(scntDiv);
                i++;
                return false;
        });

        $('#remScnt').live('click', function() {
                if( i > 2 ) {
                        $(this).parents('p').remove();
                        i--;
                }
                return false;
        });
});
http://www.tecasoft.com Un ninja del hacking etico, programacion en html5, css3, javascript, jquery, php, python, c/c++, ensamblador, ingenieria reversa,a auditorias de seguridad, pentesting, exploits