我正在開發帶選項頁的Chrome擴展。在該頁面上,我放置了一個上傳圖片選項,但無法使用JavaScript加載文件。我嘗試過很多解決方案(1st solution,2nd solution ...),但都沒有成功。奇怪的是,即使在html代碼中的「onclick」屬性也不會調用相應的函數。下面是代碼示例:上傳文件在Chrome擴展選項中不起作用頁面
HTML例如:
<input type="file" name="uploadImage" id="uploadImage" />
<button type="submit" id="imageUpload-btn" onclick="myFunction();">Upload</button>
JavaScript示例:
jQuery("#imageUpload-btn").click(function(){
var image = new Image();
image.src = jQuery("#uploadImage").val();
alert(image.src);
image.onload = function(){
alert("on load");
}
image.onerror = function(){
alert("error");
}
});
我在第一時間拿到警報的文件的路徑,但隨後總是錯誤警報。函數「myFunction()」不被調用,但如果我直接在瀏覽器中打開文件,「onclick」觸發器將工作,並調用「myFunction()」。
我在做什麼錯,或者我錯過了什麼?
文件輸入的值不是文件的實際路徑(由於瀏覽器的安全性)。你是否打算通過ajax上傳這張圖片? – Musa
如果有可能我只想用javascript上傳它並保存在chrome.storage中。我試過了一個代碼,它將圖像存儲在localStorage中(html5,我是tjik,它是這個頁面[鏈接](http://robnyman.github.io/html5demos/localstorage/)中的一個),但它不會' t在chrome擴展的選項頁中工作,但是如果我直接在瀏覽器中打開option.html文件,它工作正常。它必須是 – Marko