Je n'arrive pas à comprendre comment passer une variable (ou un tableau de variables) d'un script de contenu à une page d'arrière-plan. Ce que j'essaye de faire est de trouver certains éléments DOM avec mon script de contenu, puis de les envoyer sur ma page d'arrière-plan pour que je puisse faire un XMLHttpRequest interdomaine avec eux (les stocker dans une base de données sur un site différent).Extension Chrome: comment passer une variable de Content Script à background.html
Mon code est ci-dessous. Je sais que la variable nommée "sérialiser" n'est pas transmise (et je ne m'attends pas à ce qu'elle soit basée sur mon code actuel mais l'ai dans le code, donc c'est plus facile de voir ce que je veux faire). variable d'un script de contenu à une page d'arrière-plan?
Mon contenu Script:
function onText(data) {
alert("Great Success!!");
};
$("#insertprofile").click(function(){
serialize = $(".certaininputs").serialize();
chrome.extension.sendRequest({'action' : 'insertprofile', 'serialize' : serialize}, onText);
});
Mon arrière-plan Page:
<script>
function insertprofile(serialize) {
var xhr = new XMLHttpRequest();
xhr.onreadystatechange = function(data) {
if (xhr.readyState == 4) {
if (xhr.status == 200) {
var data = JSON.parse(xhr.responseText);
callback(data);
} else {
callback(null);
}
}
}
var url = ('http://mysite.com/storeindatabase.php?' + serialize);
xhr.open('GET', url, true);
xhr.send();
};
function onRequest(request, sender, serialize) {
if (request.action == 'insertprofile') {
insertprofile(serialize);
}
};
chrome.extension.onRequest.addListener(onRequest);
</script>
Avez-vous vérifié dans la console Inspecteur s'il y a des erreurs? (sur la page, et la page d'arrière-plan) –