Правильно ли использовать мой вызов ajax и jQuery PHP только для кнопки отправки? - PullRequest
0 голосов
/ 08 июля 2019

Я использую сетку кендо, которая имеет древовидную структуру с флажками. Итак, здесь я хочу сделать POST с помощью вызова AJAX, чтобы получить идентификатор выбранных флажков. Есть ли какие-либо исправления в этом коде? Потому что нет функции для кнопки отправки.

AJAX вызов для кнопки отправки

$("#primaryTextButton").kendoButton();
    var button = $("#primaryTextButton").data("kendoButton");
    button.bind("click", function(e) {
        $.ajax({
            type: "POST",
            url: "getTest.php",
            //data: { name: "John" }
            data: function () {
                        return {
                            method: "getTemplate",
                        //  employeeID: "<?php echo $_SESSION['employeeID'];?>",    
                        //  propertyID: "<?php echo $_SESSION['propertyID'];?>",
                        }
                    },
        }).done(function( msg ) {
            alert( "Data Saved: " + msg );
            });
    }); 
}

jQuery PHP

function getTemplate() {
global $ehorsObj;
$positionTemplateID = (isset($_POST['positionTemplateID']) ? $_POST['positionTemplateID'] : '');
$hrsPositionID      = (isset($_POST['hrsPositionID']) ? $_POST['hrsPositionID'] : '');
$programID          = (isset($_POST['programID']) ? $_POST['programID'] : '');
$propertyID         = (isset($_POST['propertyID']) ? $_POST['propertyID'] : '');
$employeeID         = (isset($_POST['employeeID']));

Если они используют: Если isset $ _POST, Я немного запутался здесь. Есть ли какое-то решение по этому поводу?

Демо Здесь

1 Ответ

0 голосов
/ 08 июля 2019

Ваша демонстрационная ссылка имеет функцию checkedNodeIds.Эта функция содержит проверенные узлы в многомерном массиве, например

nodes[i].moduleID
nodes[i].groupID
nodes[i].programID

. Так что верните этот массив из этой функции и передайте его как данные ajax.Затем обработайте его в своем PHP-бэкэнде.

function checkedNodeIds(nodes, checkedNodes) {
      for (var i = 0; i < nodes.length; i++) {
        if (nodes[i].checked) {
          //checkedNodes.push(nodes[i].moduleID);
         // checkedNodes.push(nodes[i].groupID);
          checkedNodes.push(nodes[i].programID);
        }

        if (nodes[i].hasChildren) {
          checkedNodeIds(nodes[i].children.view(), checkedNodes);
        }
      }
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...