Ir para conteúdo

POWERED BY:

Arquivado

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

Jean Martins

[Resolvido] Obter valor de um objeto retornado por html pelo Json

Recommended Posts

Olá a Todos!

 

Estou fazendo uma aplicação que realiza um cadastro por ajax e me retorna uma listagem que envio ao jquery por Json_encode do php.

Até aqui está fazendo o que precisa. Os valores eu mostro numa tabela html, dentre os valores eu preciso obter o valor de um input do tipo hidden que é um array:

 

<input type="hidden" name="idFilial[]" value="">

 

Já tentei de vários jeitos mas nao consegui segue o codigo abaixo:

 

$("#salvarFilial").click(function(){ //button
	//campos do formulario
	var parametro = {
			acao		: 'set',
			idMatriz	: $("#CLI_ID").val(),
			razao		: $("#razaoSocialFilial").val(),
			cnpj		: $("#cnpjFilial").val(),
			inscricao	: $("#inscFilial").val(),
			numeroInsc	: $("#numInscFilial").val(),
			fantasia	: $("#nFantasiaFilial").val(),
			areaAtuacao	: $("#ramoAtvFilial").val(),
			cep		: $("#cepFilial").val(),
			rua		: $("#logradouroFilial").val(),
			numero		: $("#numeroEndFilial").val(),
			bairro		: $("#bairroFilial").val(),
			complemento	: $("#complementoFilial").val(),
			cidade		: $("#cidadeFilial").val(),
			estado		: $("#estadoFilial").val()
	}

	$.ajax({
		type: "POST",
		url: "ajxcFilial.php",
		data: parametro

	}).done(function( data ) {

		if(data){
			$("#divMensagem").addClass("notibar msgsuccess");
			$("#divMensagem").html("<p><b>Ok: Empresa cadastrada.</b></p>");
			$("#divMensagem").css('display','block');
		}

	});

	//faz a consulta e mostra as filiais já cadastradas
	$.getJSON('ajxcFilial.php?',{acao: 'get', idMatriz: $("#CLI_ID").val(), ajax: 'true'}, function(c){
		//motra os dados atraves de uma tabela
		var tabela = "";
		tabela = "<table>" +
					"<tr>" +
						"<th>Empresa</th>" +
						"<th>CNPJ</th>" +
						"<th>Logradouro</th>" +
						"<th>Cidade</th>" +
						"<th>Estado</th>" +
						"<th>Status</th>" +
						"<th>Ação</th>" +
					"</tr>";
		for(i=0; i < c.length; i++){
			tabela+= "<tr>";
			tabela += "<td>"+ c[i].CLI_RAZAO + "</td>";
			tabela += "<td>"+ c[i].CLI_CNPJ + "</td>";
			tabela += "<td>"+ c[i].CLI_LOGRA +", "+ c[i].CLI_NUMERO+" - "+ c[i].CLI_BAIRRO +"</td>";
			tabela += "<td>"+ c[i].CLI_CIDADE_DESC + "</td>";
			tabela += "<td>"+ c[i].CLI_UF + "</td>";
			tabela += "<td>"+ c[i].CLI_STATUS + "</td>";
			tabela += "<td><a style='float:left;' href='javascript:void(0)' class='edita-escolhido' title='Editar' alt='Editar'><center><i class='icon-pencil'></i></center></a>" +
					"<input type='hidden'  class='idFilial' name='idFilial[]' value='"+c[i].CLI_ID+"' /> " + "</td>";
			tabela += "</tr>";
		}
		tabela += "</table>";

		$(".dadosFilial").html(tabela);
	});	

});

$("table:visible tr").find(".edita-escolhido").live("click", function(event){

	var id = $(this).find("input[type='hidden'][name='idFilial[]']").attr('class');
});

 

Será que alguem pode me dar uma força?

Compartilhar este post


Link para o post
Compartilhar em outros sites

use o .serialize() apartir do formulário. Ai o jQuery faz o objeto de dados certinho para você.

Compartilhar este post


Link para o post
Compartilhar em outros sites

use o .serialize() apartir do formulário. Ai o jQuery faz o objeto de dados certinho para você.

 

entao pensei nisso, só que é o seguinte, este cadastro de filiais é dentro do cadastro de matriz(empresa).Ele vai montar o serialize com todos os campos inclusive os da matriz? acho que pega todos né?

Compartilhar este post


Link para o post
Compartilhar em outros sites

vai pegar todos os inputs, selects e textareas que estiverem dentro do form.

Compartilhar este post


Link para o post
Compartilhar em outros sites

vai pegar todos os inputs, selects e textareas que estiverem dentro do form.

 

humm acho que nao vai adiantar muito, o problema não é em montar os dados e sim pegar o valor de um array de inputs pra passar pra outra função, como tinha tito a tabela é montada no jquery e ai preciso do valor após clicado para poder fazer a edição.

Compartilhar este post


Link para o post
Compartilhar em outros sites

pq não vai adiantar ?

 

ele vai fazer isso também. Resolve.

Compartilhar este post


Link para o post
Compartilhar em outros sites

pq não vai adiantar ?

 

ele vai fazer isso também. Resolve.

ah é verdade ele vai pegar os valores do hiddens, mas pra eu pegar só o clicado, por exemplo, na tabela tem um link para editar nos registros adicionados preciso adicionar um id pra saber que ele foi clicado né e no php só armazeno o valor dele, será que funciona?.

Compartilhar este post


Link para o post
Compartilhar em outros sites

não entendi nada cara.. ai você teria q ter um form para cada registro..

 

a sua modelagem é que tá esquista, ou não estou conseguindo visualizar oque você tá falando.

Compartilhar este post


Link para o post
Compartilhar em outros sites

não entendi nada cara.. ai você teria q ter um form para cada registro..

 

a sua modelagem é que tá esquista, ou não estou conseguindo visualizar oque você tá falando.

Desculpe se me expressei mal. É que eu tenho um cadastro de empresas. Ao abrir a pagina de cadastro existe um form com varias abas e a aba 1 é pra cadastrar a empresa matriz, na aba 2 cadastra as filiais. AO abrir o cadastro o mysql já cria um campo vazio para esse registro e armazena o id no form. na aba 2 caso eu queira cadastrar filiais sem que tenha que finalizar o form, ai que entra o codigo que postei. Tenho campos que são enviados por ajax e faz a inclusão da filial no banco e me retorna uma tabela com o registro, caso eu queira cadastrar mais de uma filial, a cada vez que eu fazer a requisição ajax(atraves de um button que tem na aba 2)o php vai cadastrar no banco e me mostrar as filiais ja cadastradas referente a matriz que está sendo inserida.

 

Sei que é meio complexo. Vlw pelo empenho e pela disponibilidade.

Compartilhar este post


Link para o post
Compartilhar em outros sites

ta confuso, pq você começou falando de uma coisa, e agora está falando de outra.

 

Qual a sua dúvida ? já resolveu os input hidden ? caso sim, abra um novo tópico com a outra dúvida.

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.