Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Amigos, boa tarde...acabei de montar minha aplicação e me deparei com esse problema,.
Tenho um form no qual 2 campos são adicionados e removidos dinamicamente...a função é parecida com a abaixo
$(function() {
var scntDiv = $('#p_scents');
var i = $('#p_scents p').size() + 1;
$('#addScnt').live('click', function() {
$('<p><label for="p_scnts"><input type="text" id="p_scnt" size="20" name="p_scnt_' + i +'" value="" placeholder="Input Value" /></label> <a href="#" id="remScnt">Remove</a></p>').appendTo(scntDiv);
i++;
return false;
});
$('#remScnt').live('click', function() {
if( i > 2 ) {
$(this).parents('p').remove();
i--;
}
return false;
});
});
porem a funcao live() não é mais reconhecida na nova versao do jquery...fui na documentação e subistitui pela funcao on()..
Eu consigo gerar novos campos, só nao consegui fazer remover.
Alguma dica?
Olá amigo...o erro é "live() is not function"
Segue condigo completo:
$(function() {
var scntDiv = $('#x_solicitacao');
var i = $('#x_solicitacao span').size() + 1;
$('#solicitacao').on('click', function() {
$('<span><br/><br/><div class="input-prepend"><span class="add-on">Material: </span><select class="span5" id="prependedInput" name="produtos[]"><?php echo $option;?></select></div> <div class="input-prepend"><span class="add-on">Quantidade: </span> <input class="span2" id="prependedInput" type="text" name="quantidade[]" ></div> <a class="btn btn-danger" href="#" id="remove_solicitacao">-</a></span>').appendTo(scntDiv);
i++;
return false;
});
$('#remove_solicitacao').on('click', function() {
if( i > 2 ) {
$(this).parents('span').remove();
i--;
}
return false;
});
});
Já tentei um alert pra checar e nada acontece....eu consigo inserir o novo campo, mas remove-lo não.use classes, e não ID. Já que vc vai repetir o elemento:
$('.remove_solicitacao').on('click', function() {
..
class="remove_solicitacao"
o método .live() foi substituído pelo .on() que é mais flexível de acordo com a jquery, por isso não está mais conseguindo
Aparece algum erro?
Experimentou colocar um alert assim [inline]$('#remScnt').live('click', function(){ alert('Chegando aqui'); });[/inline]
Se possível, poste o código que você fez utilizando o .on