Jump to content
Daniivo

Ajax que crie Form

Recommended Posts

Daniivo

Pessoal preciso de uma ajudinha, eu ando aqui a procura de algo que nem sei bem como procurar...

isto deve haver por ai feito...

è ideia por exemplo, Quantos filhos tens?? "10"

arranjar uma maneira de aparecerem 10 formulários com campos por exemplo nome e idade dos respetivos filhos, depois isso sera metido dentro da base de dados....

qual sera a melhor maneira de fazer isto....

Edited by Daniivo

Share this post


Link to post
Share on other sites
HappyHippyHippo

a maneira mais simples =

um filho por página : depois de enfiares um, nova página, novo filho


IRC : sim, é algo que ainda existe >> #p@p

Share this post


Link to post
Share on other sites
KiNgPiTo

Podes sempre brincar com os appends no jquery e tornar tudo num só formulário com campos dinâmicos, algo do tipo:


<html>
<head>

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js" type="text/javascript"></script>
<script type="text/javascript">

$(document).ready(function() {

   $("#criar").click(function(){

       var conta = $("#num").val();

       var templateInput = '<input type="text" id="inp___" name="inp___" />';
       var templateSubmit = '<input type="submit" value="submeter" />';
       var flag=false;

       $("#form").empty();

       for(i=0; i<conta; i++){
           $("#form").append("<p>------- Formulário do Filho " + (i+1) + ": --------------</p>");
           $("#form").append("<p>Nome: "+templateInput.replace("___","nome"+i)+"</p>");
           $("#form").append("<p>Idade: "+templateInput.replace("___","idade"+i)+"</p>");
           flag=true;
       }

       if(flag){
           $("#form").append("<p>"+templateSubmit+"</p>");
       }else alert("ERRO!!");

   });

});

</script>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>

<body>

   <p>Nº Filhos: 
      <input type="text" id="num" name="num" />
      <input type="button" value="criar" id="criar" />
   </p>

   <form id="form" name="form" action="" method="post"></form>

</body>
</html>

Crias os camops do formulário dinamicamente e podes aceder com o teu action do form a esses campos, que estão numerados sequencialmente [0,num[, vê o código fonte da página para veres os nomes dos campos gerados...

Share this post


Link to post
Share on other sites
Daniivo

a maneira mais simples =

um filho por página : depois de enfiares um, nova página, novo filho

assim demorar muito, è muito mais pratico estarem ali na pagina a opçao de meter mais 1 ou remover, editar o anterior etc etc...

CLTF eu n percebi como faço o valor as variáveis, ou seja eu vou fazer um post do que ?

Edited by Daniivo

Share this post


Link to post
Share on other sites
Daniivo

Que campos tem o filho?

yoda tanto demora??

tem nome idade sexo morada numero telefonico etc etc

isso è importante?? ter 1 campo e 100 è mesma coisa? explica a tua ideia

Edited by Daniivo

Share this post


Link to post
Share on other sites
HappyHippyHippo

tira ideias daqui

$("#container").load("ajaxform.php", {count : 3});

<?php
// ajaxform.php
$count = (int)$_POST['count'];
$html = "";
for($i = 0; $i < $count; $++) {
$html.= "<div>";
$html.= "<input name='name[$i]' />";
$html.= "<input name='age[$i]' />";
$html.= "</div>";
}
echo $html;
?>


IRC : sim, é algo que ainda existe >> #p@p

Share this post


Link to post
Share on other sites
Daniivo

Amigo, tem calma. Já te foi respondida a dúvida de mais de uma maneira, e a comunidade está aqui de voluntário para te ajudar, não te esqueças disso.

calma nada!!! tens que me ajudar!!!

lol tou a brincar contigo!! tu ja me ajudas-te uma data de vezes, e o pessoal vai criando laços, tvz ja nem te lembres... (sentimento nao reciproco :/)

mas atençao nada de paneleiradas....

yoda è verdade ja me deram uma data de ajudas, mas visto que eu nao sei implementar o scipt no php, porque n percebo nada da quilo.... por vezes a coisa esta bem facil para mim fica complicado....

eu quando chegar a casa vou ver o codigo que o Happy meteu ai....

mas Obrigado pessoal ;)

Share this post


Link to post
Share on other sites
some

Pessoal preciso de uma ajudinha, eu ando aqui a procura de algo que nem sei bem como procurar...

isto deve haver por ai feito...

è ideia por exemplo, Quantos filhos tens?? "10"

arranjar uma maneira de aparecerem 10 formulários com campos por exemplo nome e idade dos respetivos filhos, depois isso sera metido dentro da base de dados....

qual sera a melhor maneira de fazer isto....

<html>
<div id="filhos"></div>
<input id="total" type="hidden" value="0">
<input type="button" value="adicionar filho" onclick="adicionar();">
<script type="text/javascript">
function adicionar()
{
var obj = document.getElementById('filhos');
var total = document.getElementById('total');
total.value = parseInt(total.value) + 1;
obj.innerHTML += 'Nome:<input type="text" name="nome[]"><br>';
obj.innerHTML += 'Idade:<input type="text" name="idade[]"><br>';
obj.innerHTML += 'Sexo:<input type="text" name="sexo[]"><br>';
obj.innerHTML += '<hr>';
alert('você tem '+total.value+' filho(s)');
}
</script>

</html>

Edited by yoda

Share this post


Link to post
Share on other sites
some

Pessoal preciso de uma ajudinha, eu ando aqui a procura de algo que nem sei bem como procurar...

isto deve haver por ai feito...

è ideia por exemplo, Quantos filhos tens?? "10"

arranjar uma maneira de aparecerem 10 formulários com campos por exemplo nome e idade dos respetivos filhos, depois isso sera metido dentro da base de dados....

qual sera a melhor maneira de fazer isto....

ACHO QUE FICA MELHOR COM SELECT:

----------------------------------------------------------------------------------------------------

<html>

Quantos filhos têm?
<select id="numero_de_filhos" onchange="adicionar_campos();">
<option value="0">0</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
<br><br>
<div id="campos" style="width:400px;text-align:center"></div>

<script type="text/javascript">
function adicionar_campos()
{
var campos = document.getElementById('campos');
var filhos = document.getElementById('numero_de_filhos');
campos.innerHTML = '';
for(var n=0; n < filhos.value;n++)
{
campos.innerHTML += 'Nome:<input type="text" name="nome['+n+']"><br>';
campos.innerHTML += 'Idade:<input type="text" name="idade['+n+']"><br>';
campos.innerHTML += 'Sexo:<input type="text" name="sexo['+n+']"><br>';
campos.innerHTML += '<hr>';
}
}
</script>

</html>

Edited by yoda
  • Vote 1

Share this post


Link to post
Share on other sites
Daniivo

ACHO QUE FICA MELHOR COM SELECT:

----------------------------------------------------------------------------------------------------

<html>

Quantos filhos têm?

<select id="numero_de_filhos" onchange="adicionar_campos();">

<option value="0">0</option>

<option value="1">1</option>

<option value="2">2</option>

<option value="3">3</option>

</select>

<br><br>

<div id="campos" style="width:400px;text-align:center"></div>

<script type="text/javascript">

function adicionar_campos()

{

var campos = document.getElementById('campos');

var filhos = document.getElementById('numero_de_filhos');

campos.innerHTML = '';

for(var n=0; n < filhos.value;n++)

{

campos.innerHTML += 'Nome:<input type="text" name="nome['+n+']"><br>';

campos.innerHTML += 'Idade:<input type="text" name="idade['+n+']"><br>';

campos.innerHTML += 'Sexo:<input type="text" name="sexo['+n+']"><br>';

campos.innerHTML += '<hr>';

}

}

</script>

</html>

mas isso nem esta dentro de um form, se eu quiser meter isso dentro de uam base de dados, como è que eu puxo esses valores por $_post???

Some

Bem vindo ao P@P

Edited by Daniivo

Share this post


Link to post
Share on other sites
some

mas isso nem esta dentro de um form, se eu quiser meter isso dentro de uam base de dados, como è que eu puxo esses valores por $_post???

Some

Bem vindo ao P@P

tens que meter isso dentro da tag form

<form action="ficheiro.php" method="post">

<select id="numero_de_filhos" onchange="adicionar_campos();">

<option value="0">0</option>

<option value="1">1</option>

<option value="2">2</option>

<option value="3">3</option>

</select>

<br><br>

<div id="campos" style="width:400px;text-align:center"></div>

</form>

Share this post


Link to post
Share on other sites
Daniivo

tens que meter isso dentro da tag form

<form action="ficheiro.php" method="post">

<select id="numero_de_filhos" onchange="adicionar_campos();">

<option value="0">0</option>

<option value="1">1</option>

<option value="2">2</option>

<option value="3">3</option>

</select>

<br><br>

<div id="campos" style="width:400px;text-align:center"></div>

</form>

isso n funciona!!!

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.