0

可以覆盖标签中的 value 属性吗?我的 JavaScript 代码

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;
 }

更新

我使用 UIWebView。

4

1 回答 1

2

<input type="file">AFAIK,由于安全原因,您不能以编程方式设置值。用户必须明确点击它来设置它的值。

于 2012-05-29T16:55:00.423 回答