[英]Continually send message from background.js to popup.js in setInterval but only when popup is opened?
[英]Send message with ID of checked checkbox from popup.js to background.js
我想將選中復選框的 ID 從 popup.js 發送到 background.js。 我按以下方式嘗試過,但失敗了:
彈出窗口.html
<form id="cbx">
<label for="cb1">G</label>
<input name="cb1" type="checkbox">
<input type="submit" value="Submit">
彈出窗口.js
document.getElementById('cbx').addEventListener(
'submit', function checkForm(event) {
event.preventDefault();
//Define the form element
var form = document.getElementById("cbx");
if (form.cb1.checked) {
chrome.runtime.sendMessage({greeting: "cb1"});
}
return true;
});
背景.js
chrome.extension.onMessage.addListener(function (request, sender, sendResponseParam) {
if( request.greeting === "cb1" ){
console.log("cb1");
}
})
檢查復選框后控制台仍然為空。 我該如何正確處理?
終於走上了這條路:
popup.js:
if (form.cb1.checked) {
chrome.runtime.sendMessage({greeting: "cb1"}, function(response) {
return true;
});
}
背景.js
chrome.runtime.onMessage.addListener(
function(request, sender, sendResponse) {
if (request.greeting == "cb1"){
sendResponse();
console.log(request.greeting);
var action_url = "http://www.google.com/";
chrome.tabs.create({ url: action_url });
}
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.