2012-05-29 56 views
0

可以覆蓋標籤中的value屬性嗎?我在JavaScript覆蓋<input type =「file」>值屬性

var element = document.createElement('input'); 
element.type = 'FILE'; 
element.__defineGetter__('value',function(){ return 'ololo'; }); 
alert(element.value); 

代碼它顯示空字符串。我也嘗試重寫 '價值' 與原型

function BPFILEINPUT(value) 
{ 
    this.value = value; 
} 
BPFILEINPUT.prototype = element; 
var myFileInput = new BPFILEINPUT('ololo'); 
alert(myFileInput.value); 

它的工作,但在大跌

form.appendChild(myFileInput); 

我嘗試上傳的形式通過測試上4shared.com

var uplElems = aUploadForm.elements; 


    for (var i = 0; i < uplElems.length; i++) { 
     var currentUploadElement = uplElems[i] 
     if (currentUploadElement.type == 'file') { 
      if (currentUploadElement.value == '') { 
       // skip 
      } else { 
       if (!checkFileLength(currentUploadElement)) { 
        return false; 
       } 
       filesToUpload += getNumberOfSelectedFiles(currentUploadElement); 
      } 
     } 
    } 
    if (filesToUpload < 1) { 
     alert('You didn\'t select any file to upload yet.'); 
     return false; 
} 

UPDATE

我使用的是UIWebView。

回答

2

AFAIK,由於安全原因,您無法以編程方式設置值<input type="file">。用戶必須明確點擊它才能設置其值。

+0

我知道這件事。出於這個原因,我試圖覆蓋。也許有一種方法可以通過WebKit在UIWebView中啓用按鈕? –

+0

@ user1424203:搜索谷歌「HTML5文件API」,可能會幫助,但我不知道。 – Sarfraz