Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Segue o javascript que eu utilizo atualmente só que o mesmo somente funciona na versão 1.5 do jquery o que acaba me trazendo um problema porque preciso utilizar a ultima versão do mesmo..
Alguém poderia me recomendar uma forma mais atual de incluir dinamicamente inputs no formulário utilizando jquery 2.0+?
Desde já agradeço a colaboração.
$(document).ready(function() {
var scntDiv = $('#p_scents');
var i = $('#p_scents p').size() + 1;
$('#addScnt').live('click', function() {
$('<p><span class="row_SD_material"><span class="col-xs-5"><label>Material</label><input type="text" class="form-control" placeholder="TUBO PVC DEFOFO DN 50MM" name="material[]" /></span><span class="col-xs-2"><label>Unidade</label><input type="text" class="form-control" placeholder="M" name="unidade[]" value="UN"/></span><span class="col-xs-2"><label>QTD. pedida</label><input type="text" class="form-control" placeholder="10" name="quantidade_necessaria[]" /></span><span class="col-xs-2"><label>QTD. recebida</label><input type="text" class="form-control" placeholder="0" name="quantidade_recebida[]" value="0"/></span></span><a id="remScnt" class="btn btn-default remove" href="#"><i class="glyphicon glyphicon-trash"></i></a></p>').appendTo(scntDiv);
i++;
return false;
});
$('#remScnt').live('click', function() {
if( i >= 2 ) {
$(this).parents('p').remove();
i--;
}
return false;
});
});A partir da jQuery 1.7 o padrão é o .on()
Uma leitura boa para o assunto http://api.jquery.com/live/
OK obrigado!
Com as informações acima funcionou para incluir mais inputs, só que a função que removia os input não funciona ainda.
$('#remScnt').on('click', function(){
if( i >= 2 ){
$(this).parents('p').remove();
i--;
}
return false;
});Veja se ajuda - http://jsfiddle.net/angelorubin/3g6wnkz1/
Ajudou sim amigo, muito obrigado a todos :natalsmile:
Surgiu uma outra dúvida...
os inputs utilizo o array tentei recuperar os valores com o php mas, somente consigo o valor do primeiro input os outros não vem junto..
Desta forma que estou recuperando os valores
$array_material = $_POST["material"];
$array_qtd = $_POST["quantidade"];
$array_precoun = $_POST["precoun"];
$array_size = sizeof($array_material);
for($x = 0; $x < $array_size; $x++){
minha query
}
No lugar do .live() vc deve usar a função .on()