Ajax-вызов производит неопределенный путь - PullRequest
0 голосов
/ 18 октября 2019

У меня проблемы с выяснением, почему не работает вызов ajax, который я делаю для получения файла Json. Я знаю, что этот вопрос задавали много, но кажется, что ни один из ответов не смог мне помочь, поэтому я начинаю новую тему здесь.

Я создаю раскрывающееся меню, где, если выбрановыполняется вызов базы данных, чтобы получить информацию, необходимую для всего моего сайта. Вот как я генерирую выпадающие элементы:

const dropDown = [];
var childElement, appendChildElement, parentElement;

// Add child elements
for (var i = 0; i < nameList.length; i++) {
    dropDown.push({ id: numList[i], name: nameList[i]});
}
parentElement = document.getElementById('myDropdown');

// Add child elements
for (let item of dropDown) {
    childElement = document.createElement('a');
    appendChildElement = parentElement.appendChild(childElement);
    appendChildElement.innerHTML = item.name;
    appendChildElement.onclick = function () {
        $.ajax({
            method: "GET",
            url: "/home/data/" + item.id,
            type: "JSON"
        } 
    ).asServiceResult(true).done(function (result) {
        alert(result);
    }).fail(function (isCommunicationError) {
        if (!isCommunicationError)
            magalert.errorMessage("Couldn't load content");
    });
    };
    //appendChildElement.addEventListener("click", item.onclick, false);
    appendChildElement.id = item.id;
    //appendChildElement.href = item.href;
}

Пока я просто проверяю это с помощью простого предупреждения, которое, как я знаю, не самая эффективная практика, но это легко. Я пытаюсь вызвать функцию данных в моем домашнем контроллере, которая выполняет следующее:

public IActionResult Data(int id)
            {
                AllChapterInformation allChapterInformation = new AllChapterInformation();
                Chapter chapter = allChapterInformation.GetChapterInformation(id);
                return Json(chapter);
            }

Я попытался добавить [HttpGet] и поиграться с атрибутами. Я попытался изменить путь, тип, в основном любое решение по этой теме. И все же, результирующий путь при нажатии на выпадающий список всегда выдает Localhost / Undefined. Какие-либо предложения? Я чувствую, что упускаю что-то болезненно очевидное.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...