none
Reeditar dados com javascript, knockout, jquery RRS feed

  • Pergunta

  • Bom dia a todos, estou com um novo problema que é o seguinte: tenho alguns dados em uma viewBag que são exibidos em uma tabela. Agora, qdo o usuario clica em uma destas linhas, os dados referentes a esta linha são enviados para um pequeno trecho de codigo knockout, que por sua vez possibilita a edição dos dados, e posteriormente salvo os dados......o problema é: consigo clicar na linha, enviar os dados para o trecho knockout, mas qdo clico em addTarifas, os dados nao veem....segue abaixo alguns prints.

    figura1 == figura3: trecho knockout responsavel por add e editar as tarifas

    qdo clico em adicionar Tarifas, os dados inseridos acima são inseridos na tela abaixo:

    figura2==figura4: listando as tarifas inseridas

    Quando eu clico sobre o numero do cartao de um funcionario, os dados retornam para os campos da figura 1, possibilitando assim a edição dos mesmos, conforme figura3. É excluído também a linha que foi clicada da figura2.

    Figura3: dados prontos para editar

    Ai entra o meu problema, qdo clico em add tarifas novamente, os dados desaparecem, conforme figura 4.

    Figura4: erro relatado

    Abaixo esta o código javascript que cuida destas telas:


    <script type="text/javascript">
        function editTarifa() {
            $('.cardNumber').click( function () {
                var linha = $(this).parent();
                    $('#op').append("<option value='" + linha[0].childNodes[0].innerText + "'selected='selected'>" + linha[0].childNodes[0].innerText + "</option>");
                    $('#cartao').val(linha[0].childNodes[1].innerHTML);
                    $('#qte1').val(linha[0].childNodes[2].innerText);
                    $('#value1').val(linha[0].childNodes[3].innerText);
                    $('#nome1').val(linha[0].childNodes[4].innerText);
                    $('#qte2').val(linha[0].childNodes[5].innerText);
                    $('#value2').val(linha[0].childNodes[6].innerText);
                    $('#nome2').val(linha[0].childNodes[7].innerText); 
                    $('#qte3').val(linha[0].childNodes[8].innerText);
                    $('#value3').val(linha[0].childNodes[9].innerText);
                    $('#nome3').val(linha[0].childNodes[10].innerText); 
                    $('#qte4').val(linha[0].childNodes[11].innerText);
                    $('#value4').val(linha[0].childNodes[12].innerText);
                   // $('#nome4').val();
                    $('#nome4').setAttribute("val", linha[0].childNodes[13].innerText);
               $(this).parent().remove();
    
                
            });
        }
       </script>
    Conto com ajuda de vocês.....


    sexta-feira, 1 de março de 2013 15:11

Respostas

  • Pode ser que depois do  ajax  o botão add está  perdendo o evento  click do botão, você ja tentou usar o live  ou on.

    "$("a.foo").live("click", fn)"  ou  $(document).on("click", "a.foo", fn)


    Autor de tutorias ASP.Net MVC(3,4),C#,Web API,Entity Framework para mais detalhes http://juliano-sales.net/

    • Sugerido como Resposta Fabio Junio terça-feira, 23 de abril de 2013 11:46
    • Não Sugerido como Resposta Fabio Junio terça-feira, 23 de abril de 2013 11:46
    • Marcado como Resposta Fabio.Junio quarta-feira, 8 de maio de 2013 12:22
    terça-feira, 23 de abril de 2013 11:32