Caros(as),
Eu tenho 6 registros na tabela pai x filho, e a ultima opção é um botão do tipo com uma função que deve carregar o indice da linha onde o botão foi clicado e carregar os valores de cada linha da tabela pai x filho clicada no botão, alguém sabe como por esse botão carregamos o indice para dentro da função para então fazer dessa forma. Quando o fluxo é tramitado e ficha salva o id do botao nao fica insere_1 ele fica somente insere, impossibilitando de passar o indice para a funcao que vai capturar o campo da linha clicada no botão no pai x filho.
Percebi que o botão sempre que avanço para etapa na qual onde será realizado o click no botão na qual preciso capturar o indice da linha da tabela pai x filho todos os botoes estão com o mesmo nome sem nenhum indice.
função a ser usada no botao.
cadastraFilialFornecedor: function(el) {
var $this = this;
$this.limparToast();
$this.loading().show();
var $campos = this.camposFmadFmid();
var Indice = $(el).attr('id').split('___');
console.log(parTr);
//Objeto campos FMAD/FMID
var objCamposFilial = {
solicitacao: $($campos.solicitacao).val(),
solicitante: $($campos.solicitante).val(),
solicitante_nome: $($campos.nome).val(),
tipo_cadastro: $($campos.tipoCad).val(),
origem_ecompras: $($campos.origCompras).val(),
}
<button id="insere" onclick="EnviaDados(this)"></button>
campo+index;
campo2index;
O elemento button ou input type button nao recebem os id com os indices quando eles sao salvos.
Usa um campo tipo input que irá ter o indice ao gravar para obter essa informação e coloque bem acima do botão desejado.
No exemplo, o campo seqTable é um campo filho e abaixo tem um botão.
Ao clicar no botão aciona a função no qual obtenho o valor do indice.
function fnDetalharTable(botao) {
var campo = $(botao).prev()[0].name; //Retorna o objeto acima do botao
var indice = $(botao).prev()[0].name.substr($(botao).prev()[0].name.lastIndexOf("_")+1);
console.log('campo: ' + campo);
console.log('indice: ' + indice);
console.log('botao: ' + botao.name);
}
To usando o next(), esqueci de colcoar aqui a solução que fiz. vou postar
To usando o Id para inserir num rest os pais x filhos
Boa noite, tudo bem?
Parece que você já está solucionou a questão, mas como podemos ter mais de uma solução, coloco aqui um caminho "paliativo" que resolveu pra mim.
Eu coloco um botão no corpo do pai-filho (não é o botão que inclui linhas no pai-filho) e no onclick deste botão eu passo como parâmetro o "this.name":
<button class="btn btn-primary" id="botaoLocaliza" type="button" onclick="buscaItem(this.name);">Localizar</button>
No código Javascript eu pego este nome, que vem como o índice no final dele, e pego este valor pra usar em minhas transações:
function buscaItem(nomeBotao) {
var indiceLinha = parseInt(nomeBotao.replace("botaoLocaliza___", "")); // Aqui coloque após o nome do campo 3 (três) underlines, neste caso ficou "botaoLocaliza" mais os três underlines "botaoLocaliza___"
alert("Linha atual pai-filho: " + indiceLinha);
}
Isso faz com que você pegue sempre o item que está na mesma linha do botão.
Se estiver muito confuso me fala. Espero que ajude.