Usuário com melhor resposta
Asp Net MVC

Pergunta
-
Fala pessoal.
to com um problema aqui.
tenho um grid que recebe os dados do model quando a pagina é chamada a 1 vez. a consulta que trás o resultado recebe um parâmetro de data( data atual) ate ai blz.
o problema esta quanto tento atualizar este grid enviando um novo parâmetro de data.
então hj é dia 18/01/2020. chamei a pag. ele pega data e carrega 9 registros.
quando altero o campo data e realizo a consulta exemplo dia 20/01/2020 ( 2 registros) o grid recebe os dados carrega duas linhas. mas os campos ficam como Undefined
minha view
<table id="grid_cadastro" class="table table-bordered table-striped table-hover"> <thead> <tr> <th>Data</th> <th>Hora I</th> <th>Hora F</th> <th>De</th> <th>Para</th> <th>Cliente</th> </tr> </thead> <tbody> @foreach (var item in Model) { <tr data-id="@item.Id"> <td>@item.DataM.ToString("dd/MM/yyyy")</td> <td>@item.HoraI.ToString(@"hh\:mm")</td> <td>@item.HoraF.ToString(@"hh\:mm")</td> <td>@item.De</td> <td>@item.Para</td> <td>@item.Cliente</td> </tr> } </tbody> </table>
JS
function criar_linha_grid(dados) { var ret = '<tr data-id=' + dados.Id + '>' + '<td>' + dados.data + '</td>' + '<td>' + dados.horai + '</td>' + '<td>' + dados.horaf + '</td>' + '<td>' + dados.de + '</td>' + '<td>' + dados.para + '</td>' + '<td>' + dados.cliente + '</td>' + '<td>' + '<a class="btn btn-primary btn-alterar" role="button" style="margin-right: 3px"><i class="glyphicon glyphicon-pencil"></i> Alterar</a>' + '<a class="btn btn-danger btn-excluir" role="button"><i class="glyphicon glyphicon-trash"></i> Excluir</a>' + '</td>' + '</tr>'; return ret; } .on('click', '#btn_selecionar', function () { var btn = $(this); var url = '@Url.Action("Buscardata", "MarcacaoEntrada")', param = { DT: $('#txt_data').val() }; $.post(url, add_anti_forgery_token(param), function (response) { if (response) { var table = $('#grid_cadastro').find('tbody'); table.empty(); for (var i = 0; i < response.length; i++) { table.append(criar_linha_grid(response[i])); } } }) .fail(function () { swal('Aviso', 'Erro ao Buscar', 'warning'); }); })
alguém pode me ajudar?
Att ricardo.
Respostas
-
Resolvi da seguinte forma.
$(document).ready(function () { var hoje = new Date(); $('#txt_data').val(formatar_data(hoje)); }) .on('click', '#btn_selecionar', function () { var btn = $(this); var url = '@Url.Action("Buscardata", "MarcacaoEntrada")', param = { DT: $('#txt_data').val() }; $.post(url, add_anti_forgery_token(param), function (response) { if (response) { var table = $('#grid_cadastro').find('tbody'); table.empty(); $.each(response, function (i, item) { var rows = "<tr>" + "<td>" + item.DatM + "</td>" + " <td>" + item.HoI + "</td>" + " <td>" + item.Hof + "</td>" + " <td>" + item.De + "</td>" + " <td>" + item.Para + "</td>" + " <td>" + item.Cliente + </td>" + " <td>" + item.obs + "</td>" + " <td>" + item.tM + "</td>" + "</tr>"; $('#grid_cadastro tbody').append(rows); }); } }) .fail(function () { swal('Aviso', 'Erro ao Buscar', 'warning'); }); })
- Marcado como Resposta RicardoSj segunda-feira, 20 de janeiro de 2020 15:45