DEPRECADO - esta parte está desatualizada, portanto, não a use.
Você também pode tentar esse código, se, por exemplo, tiver adicionado formulários dinâmicos posteriormente. Por exemplo, você carregou uma janela assíncrona com ajax e deseja enviar este formulário.
$('#cpa-form').live('submit' ,function(e){
e.preventDefault();
// do something
});
UPDATE - você deve usar o método jQuery on () e tentar escutar o DOM do documento se desejar manipular conteúdo adicionado dinamicamente.
Caso 1, versão estática: se você tiver apenas alguns ouvintes e o seu formulário a ser manipulado for codificado, poderá ouvir diretamente no "nível do documento". Eu não usaria os ouvintes no nível do documento, mas tentaria ir mais fundo na árvore do doom, pois isso poderia levar a problemas de desempenho (depende do tamanho do seu site e do seu conteúdo)
$('form#formToHandle').on('submit'...
OU
$('form#formToHandle').submit(function(e) {
e.preventDefault();
// do something
});
Caso 2, versão dinâmica: se você já ouve o documento no seu código, será útil para você. Isso também funcionará para o código que foi adicionado posteriormente via DOM ou dinâmico com o AJAX.
$(document).on('submit','form#formToHandle',function(){
// do something like e.preventDefault();
});
OU
$(document).ready(function() {
console.log( "Ready, Document loaded!" );
// all your other code listening to the document to load
$("#formToHandle").on("submit", function(){
// do something
})
});
OU
$(function() { // <- this is shorthand version
console.log( "Ready, Document loaded!" );
// all your other code listening to the document to load
$("#formToHandle").on("submit", function(){
// do something
})
});
alert()
no manipulador de envio, ele é chamado? Caso contrário, pode haver um erro no seu script que impede que o manipulador de eventos seja conectado corretamente. Alguma coisa no console de erros?