在我的 Chrome 扩展程序中,我试图提取输入标签的值,但由于页面尚未提交,因此每个值都为 null。我知道这是正常行为,但有没有办法在不提交页面的情况下提取它们?
我下面的代码提取了输入标签,但我得到了 null 值:
所以这是我的 content.js:
var elements = new Array("input");
var output = "";
for (var i = 0; i < elements.length; i++)
{
var current = document.getElementsByTagName(elements[i]);
if(current.length>0)
{
for (var y = 0; y<current.length; y++)
{
output += "&" + current[y].id + "=" + current[y].value;
}
}
}
chrome.runtime.sendMessage({data: output});
这是我的 background.js:
var output2 = "";
chrome.extension.onMessage.addListener(function(request, sender, sendResponse) {
output2 += request.data;
});
chrome.browserAction.onClicked.addListener(function() {
chrome.tabs.create({url: "http://www.google.com?" + output2}, function(tab) {
chrome.tabs.executeScript(tab.id, {file: "content.js"}, function() {
sendMessage();
});
});
});