Как обновить значения Datatable после выбора выпадающего значения в jQuery - PullRequest
0 голосов
/ 13 ноября 2018

Согласно моему требованию, у меня есть раскрывающийся список, и когда я выбираю значение из раскрывающегося списка, из базы данных должны быть получены соответствующие данные.В раскрывающемся списке выберите отправку значения через jQuery и в качестве Ajax.У меня есть несколько вопросов здесь

  1. Действительно ли я хочу обновить данные для отображения выбранных данных?

Вот самый быстрый код.

Выпадающий список -

<select class="filter" id="secquneceDropdownId">
    <option value="" selected>All</option>
    <option value="INSEQUENCE">In Sequence</option>
    <option value="OUTSEQUENCE">Out Sequence</option>
    <option value="RECIPES">Sequence Mapping</option>
</select>

вызов jQuery и Ajax для отправки выпадающего выбранного значения -

        $(document).ready(function() {
        $("#secquneceDropdownId").change(function() {
            var dropdownSelected = $(this).find(":selected").val()
            var clientID = {
                "isDropdownSelected" : dropdownSelected
            }
            console.log('dropdownSelected value is = ' + dropdownSelected)
            $.ajax({
                type : "POST",
                url : "/IdeaOfThings/listSequences",
                data : JSON.stringify(clientID),
                contentType : 'application/json; charset=utf-8',
                dataType : "json",

                success : function(data) {

                }
            });

        });
    });

вызов данных для показа данных -

$(document).ready(
    function() {
       var table = $('#example2').DataTable({
            "ordering" : false,
      });
});

1 Ответ

0 голосов
/ 13 ноября 2018

Я не вижу никакой связи между вашими ajax и datatable.

Чтобы ответить на ваш вопрос 1.

Да, вам нужно будет обновлять сетку каждый раз при изменении комбо, поскольку выборка данных будет зависеть от выбранной опции.

Если вы ищете, как его реализовать

Вот пример

$("#secquneceDropdownId").change(function() {
    loadData();

}); 


function loadData(){
   var dropdownSelected = $("#secquneceDropdownId").val()
    var clientID = {
        "isDropdownSelected" : dropdownSelected
    }  

    $("#tblDeviceDetail").DataTable({
        "columns": [
           { "data": "ip" },
           { "data": "apiPort" },
           { "data": "hostname" }

           ],
           "ajax": {
               "url": "/IdeaOfThings/listSequences",
               data : JSON.stringify(clientID),
               contentType : 'application/json; charset=utf-8',
               dataType : "json",
               "type": "POST",
               "dataSrc": "[]",

           }
       });

   }

, если ваш JSON похож на

[ { "ip" : "sfsdsdfs" , "apiPort" : "322",  "hostname": "sfsdfsdf"}, 
{ "ip" : "5345345" , "apiPort" : "4444",  "hostname": "sadfasds"}] 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...