Jump to content
cleyton47

Erro na Concatenação Javascript

Recommended Posts

Bom dia pessoal,

Estou tentando concatenar botão em trecho de código de javascript porém está com erro não intendo se alguém poder me ajudar ficarei muito grato!

 

Código do erro:

 $(document).ready(function() {
                $('#frmitem').submit(function() {
                    var $this = $(this);


                    var idproduto = $this.find("input[name='idproduto']").val(),
                            descricao = $this.find("input[name='descricao']").val(),
                            qtde = $this.find("input[name='qtde']").val(),
                            precovenda = $this.find("input[name='precovenda']").val(),
                            vltotal = $this.find("input[name='vltotal']").val();

                             // botao deletar na grid   

                    var tr = '<tr>' +
                            '<td>' + $this.find("input[name='idproduto']").val() + '</td>' +
                            '<td>' + $this.find("input[name='descricao']").val() + '</td>' +
                            '<td>' + $this.find("input[name='qtde']").val() + '</td>' +
                            '<td>' + $this.find("input[name='precovenda']").val() + '</td>' +
                            '<td>' + $this.find("input[name='vltotal']").val() + '</td>' +
                             '<td>' + $this.find("input type="button" value="Delete" onclick="deleteRow(this)").val() + '</td>' +
                            '</tr>';
                          $('#grid').find('tbody').append(tr);


                    var hiddens = '<input type="hidden" name="idproduto[]" value="' + idproduto + '" />' +
                            '<input type="hidden" name="descricao[]" value="' + descricao + '" />' +
                            '<input type="hidden" name="qtde[]" value="' + qtde + '" />' +
                            '<input type="hidden" name="precovenda[]" value="' + precovenda + '" />'+
                            '<input type="hidden" name="vltotal[]" value="' + vltotal + '" />';
                              
                           

Erro:

 

 

erro.png

Edited by cleyton47

Share this post


Link to post
Share on other sites

troca:

 

'<td>' + $this.find("input type="button" value="Delete" onclick="deleteRow(this)").val() + '</td>' +
por

'<td>' + $this.find("input[type='button']").val() + '</td>' +

Share this post


Link to post
Share on other sites

William Obrigado pela ajuda!

consegui inserir o botão, porém não aparece na grid , teria que utilizar ele para remover um item da grid, na grid aparece "undefined" :upset: :upset:

 

 

Código alterado:

 var tr = '<tr>' +
                            '<td>' + $this.find("input[name='idproduto']").val() + '</td>' +
                            '<td>' + $this.find("input[name='descricao']").val() + '</td>' +
                            '<td>' + $this.find("input[name='qtde']").val() + '</td>' +
                            '<td>' + $this.find("input[name='precovenda']").val() + '</td>' +
                            '<td>' + $this.find("input[name='vltotal']").val() + '</td>' +
                            '<td>' + $this.find("input[type='button']").val() + '</td>' +
                            '</tr>';
                          $('#grid').find('tbody').append(tr);

Como apresenta na tela:

 

indefino.PNG

 

 

Código:

 

novo.PNG

Share this post


Link to post
Share on other sites

Ahh, nesse caso vc vai usar só string:

 

 

'<td><input type="button" value="Delete" /></td>'
e não, vc não vai usar onclick="".. isso fere a idéia de usar jQuery.

 

Para colocar o evento, use .click() ou .on('click', ..)

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.