Я разработал расширение chrome, которое во всплывающем окне имеет зависимый выпадающий список. Исходя из выбора пользователей в этом раскрывающемся списке, делается вызов ajax, чтобы получить некоторые данные, основываясь на выбранной опции if. Для этого я написал это jquery, которое работает правильно и возвращает идентификатор выбранных опций.
$('#scenarioDropdownList').change(function () {
scenarioId = $('#scenarioDropdownList option:selected').prop('id');
});
Вызов ajax принимает в качестве параметра attribute_d и возвращает данные с совпадающим ИД сценария. Затем я использую эти данные для управления полями в DOM. Из-за этого мой контент-скрипт выглядит следующим образом, который включает в себя вызов ajax для получения данных, а затем некоторую логику c, которая подает в суд на данные.
По мере разработки расширения chrome падение Во всплывающем окне отображается down. html, поэтому jquery для получения идентификатора (см. первую часть кода) находится во всплывающем окне. js. Мне нужно иметь возможность передать аргумент sceneId из всплывающего окна. js в скрипт содержимого, чтобы его можно было использовать в вызове ajax.
Я прочитал о передаче сообщений и предложил следующее:
popup. js
$('#scenarioDropdownList').change(function () {
scenarioId = $('#scenarioDropdownList option:selected').prop('id');
chrome.runtime.sendMessage(scenarioId);
});
content script ( content. js)
chrome.runtime.onMessage.addListener(function(response, sender, sednResponse) {
var getScenarioId = response;
})
К сожалению, пока это не работает, так как я изо всех сил пытаюсь найти решение, которое будет работать, и затем передать ScriptId из всплывающего окна. js в контентный скрипт, чтобы его можно было использовать.
К вашему сведению, я не получаю ошибку с кодом, который я создал для передачи сообщений.