laravel jquery счетчик строки таблицы добавление идентификатора автоинкремента - PullRequest
1 голос
/ 28 февраля 2020

как я могу добиться этого в моем Laravel приложении, используя запрос ajax. Мой логин c равен

  1. на странице перезагрузки таблицы. Таблица автоматической нумерации строки { пример. td=1,td=2,td=3}

  2. после Ajax после отправки добавьте данные + автоматическая нумерация к существующему номеру в таблице { пример. td=1,td=2,td=3,td=4}

как вы можете видеть td=4 это новое добавленное значение .. как я могу добиться этого и убедиться, что при перезагрузке страницы поддерживается нумерация.

Код:

$('#myform').on( "submit", function( event ) {
  event.preventDefault(); 
  $.ajax({
    type:'POST',
    url:"{{ URL::route('test') }}",
    data:$(this).serialize(),
        success:function(data){
          console.log(data)
                        var $table = $('#myTable');
                         for (var i=0;i<1;i++) {
                               var $row = $table.find("tbody").append("<tr>"+
                                  "<td>"+i+"</td>"+
                                  "<td id='name'>"+data.name+"</td>"+
                                  "<td id='code'>"+data.code+"</td>"+
                                  "</tr>").children("tr:eq("+i+")"); 
                         } }});});

Ответы [ 2 ]

0 голосов
/ 28 февраля 2020

для вас: for (var i=0;i<1;i++) Вы получаете только 1 запись, если хотите больше 1, вы можете: for (var i=0;i<data.length;i++) Вы хотите автоматически добавить номер таблицы (td start 1):

                         var $table = $('#myTable');
                         var increase = 1 ;
                         for (var i=0;i<data.length;i++) {
                               var $row = $table.find("tbody").append("<tr>"+
                                  "<td>"+(increase+i)+"</td>"+
                                  "<td id='name'>"+data[i].name+"</td>"+
                                  "<td id='code'>"+data[i].code+"</td>"+
                                  "</tr>").children("tr:eq("+i+")"); 
                         } }});
0 голосов
/ 28 февраля 2020

В вашем для l oop вы определили i<1, который будет выполняться только один раз. Поэтому вам нужно запустить l oop на основе данных ответа ajax.

Если вы хотите сохранить нумерацию, вы можете добавить этот код ajax в функцию и вызывать эту функцию при загрузке страницы и в форме отправить.

Например:

function postData() {
            $.ajax({
    type:'POST',
    url:"{{ URL::route('test') }}",
    data:$(this).serialize(),
        success:function(data){
          console.log(data)
                        var $table = $('#myTable');
                         for (var i=0;i<1;i++) {
                               var $row = $table.find("tbody").append("<tr>"+
                                  "<td>"+i+"</td>"+
                                  "<td id='name'>"+data.name+"</td>"+
                                  "<td id='code'>"+data.code+"</td>"+
                                  "</tr>").children("tr:eq("+i+")"); 
                         } }});
} 


$(document).on( "ready", function() {
  postData();
)};

$('#myform').on( "submit", function( event ) {
   postData();
)};
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...