Bom pessoal minha duvia é o seguinte. Tenho uma função em java script que usa um metodo jQuery para inserir linhas em uma table
dinâmicamente, só que depois não sei como fazer para pegar os valores de cada linha dessa table para poder gravar no banco em cada
tenho um input dentro com o seu valor preciso pegar cada
e cada
dessa tr e pegar os valores dos inputs.
segue o codigo.
[code]
// ai esta a table no codigo html antes de inserir mais linhas
Código
Descrição
Quantidade
Preço Un:
Total item:
//aqui uso uma função do jQuery para inserir mais linhas
$("#ne_nota_produtos_entrada_baixa").append(’
<input readonly=“true” value=’+codigo+’ id = “ne_pr_codigo”/>
’+
’<input readonly=“true” value=’+descricao+’ id = “ne_pr_descricao”/>
’+
’<input readonly=“true” value=’+quantidade+’ id = “ne_pr_quantidade”/>
’+
’<input readonly=“true” value=’+precouni+’ id = “ne_pr_precouni”/>
’+
’<input readonly=“true” value=’+precoTotal+’ id = “ne_pr_precototal”/>
’);
[/code]
Pessoal é isso se alguém poder me ajudar, desde já gradeço.
Cara, em vez de criar os inputs com ID, cria com CLASS!!! ou seja, troca o atributo id por class que vai consegue pegar todos os elementos. quando vc usa id, os inputs das linhas subsequentes não serão resgatados nunca porque o navegador considera apenas o id dos inputs da primeira linha unicamente…
id= identificação unica no objeto, ou seja, não pode existir mais de um elemento html com o mesmo id no mesmo window.document
com jquery, vc consegue pegar todos os elementos que possuem uma determinada classe, ai eles vêm para vc em forma de array.
// e depois…
$(’.ne_pr_codigo’); //te retorna uma lista de inputs com a classe=“ne_pr_codigo”
$(’.ne_pr_codigo’)[0]; // pega o primeiro elemento input da lista
$(’.ne_pr_codigo’)[0].value; // pega o valor do primeiro elemento input
$(’.ne_pr_codigo’).length;//pega a quantidade de elementos input da lista[/code]
ai é só fazer o mesmo para os inputs das outras colunas e vc consegue pegar todos eles
utiliza um FOR para te ajudar
Ai thiagof, não está dando certo da um erro de javascript dizendo que, por exemplo codigo, o da o seguinte erro. cannot ready property ‘codigo’ of undefined ??
Ai valeu ai pela atenção é que to començando agora em java script.
sem problemas! javascript é malvado no começo, vc tem o firebug instalado? ele é quem vai nos ajudar a depurar o javascript, se não tem, dá uma olhada aqui para saber o que é: http://getfirebug.com/
o navegador vai ter que ser reinicializado e depois que ele abrir de novo, vc aperta F12 que o firebug vai abrir para vc na parte de baixo do navegador, e na aba Script, vc vai conseguir ver seu script e por breakpoints para depurar o script.
se ja conhece o firebug, desconsidera o que escrevi acima.
proximo passo:
Posta seu script aqui, a parte que vc fez para recuperar os valores da tabela e a parte que vc tenta buscar os valores de volta.
a noite eu posto um exemplo aqui para vc entender melhor como fazer para pegar os valores da tabela sem dar erro, mais se puder postar seu script antes, eu já vejo o que deu errado blz?!
saquei agora!!! desconsidera o código lá de cima e considera esse:
var i, linhasDaTabela = new Array();
for( i=0; i < $('.ne_pr_codigo').length; i++ ) {
linhasDaTabela[i] = new Object(); // ESQUECI ESSA LINHA HEHEHE
linhasDaTabela[i].codigo = $('.ne_pr_codigo')[i].value;
linhasDaTabela[i].descricao = $('.ne_pr_descricao')[i].value;
linhasDaTabela[i].quantidade = $('.ne_pr_quantidade')[i].value;
linhasDaTabela[i].precouni = $('.ne_pr_precouni')[i].value;
linhasDaTabela[i].precoTotal = $('.ne_pr_precototal')[i].value;
}
// ai, se vc quiser saber o codigo da linha 10 por exemplo, é só fazer assim:
alert(linhasDaTabela[9].codigo);
Eu esqueci de instanciar um objeto vazio na posição “i” do array (ali na linha 03), por isso que vc recebia aquela msg
foi mal aeee :oops:
vê se funciona agora e me da um aló que a noite eu respondo blz?!