Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Deives

[Resolvido] jQuery - Resgatar valores

Recommended Posts

Eai pessoal!

 

Toda vez que uso o método .post() eu fico resgatando os valores manualmente, por exemplo:

 

var x = $('input[name=xxx]').val();
Montei um arquivo html (com código bem simples) de teste para resgatar todos os valores de input, select e textarea.

Com o código abaixo eu consigo resgatar todos os valores de meu interesse, mas gostaria de saber se é uma forma correta, como posso melhorar, tem uma forma mais correta?

 

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script>
<script type="text/javascript">
$(function(){
    $('#btn').click(function(){
        var valores = resgataValores();
        alert(valores)
    });
});

function resgataValores(){
    var valores = '';
    $("#bloco input[type=text], input[type=hidden], textarea, select").each(function(){
        valores = valores + this.value + '|';
    });
    return valores;
}
</script>

</head>
<body>

<div id="bloco">
    <input type="text" value="Valor A" name="teste1" /><br />
    <input type="text" value="Valor B" name="teste1" /><br />
    <input type="text" value="Valor C" name="teste2" /><br />
    <textarea name="teste4">Valor D</textarea><br />
    <select name="teste5">
    	<option value="Valor E">Valor E</option>
        <option value="Valor F">Valor F</option>
    </select><br />
    <input type="hidden" name="teste6" value="Valor G" />
    <input type="button" id="btn" value="Testar" />
</div>
No exemplo separei os valores por um "pipe", e no PHP posso dar um explode para acessar cada valor individualmente.

 

Agradeço!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sim, através da função serialize() do jQuery você consegue retornar todos os campos e seus respectivos valores.

Porém note que no seu exemplo não há a tag <form>.

 

Exemplo:

<!-- Seu HTML -->
<form id="meuFormulario">
<!-- ... Conteúdo do seu formulário -->
</form>
<!-- Resto HTML -->

jQuery:

<script type="text/javascript">
$(function(){
    $('#btn').click(function(){
       var valores = $('#meuFormulario').serialize();
       alert(valores);
    });
});
</script>

Referência:

http://api.jquery.com/serialize/

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.