Meu html:
<script type="text/javascript">
$(function() {
$("#bt1").click(function() {
var f = $("#form1");
var formData = f.serialize();
alert(formData);
});
});
</script>
<div id="div1">
<form id="form1" action="/Home/Test1" method="post" name="down">
<div id="div2">
<input id="input1" type="text" value="2" />
</div>
</form>
</div>
<input type="submit" id="bt1" />
Quando eu acionar o evento click, formData está vazio. Estou usando o jQuery 1.4.2.
Embora não se aplique a este exemplo específico, o mesmo comportamento ocorre se uma ou mais entradas de formulário forem
disabled
. Essas entradas não aparecerão na string serializada. No meu caso, todas as entradas do formulário tinham valores, mas foram desabilitadas, resultando no retorno de uma string vazia.fonte
serialize
extensão jQuery que itera sobre as entradas e inclui as desativadas. Mas não há como fazer isso, até onde eu sei, usando jQuery pronto para uso.Não há nenhum
name
atributo na entrada ... isso pode ser um problema para serializar.fonte
Verifique também se não há 2 elementos com o mesmo id na página.
fonte