MozTW 討論區

各項 Mozilla 相關軟體與技術討論
現在的時間是 2025-08-22, 19:45

所有顯示的時間為 UTC + 8 小時





發表新文章 回覆主題  [ 7 篇文章 ] 
發表人 內容
文章發表於 : 2007-10-24, 21:32 
離線

註冊時間: 2005-01-16, 17:02
文章: 3
來自: plant of earth
在寫一個可以增加上傳欄位數的表單
code 如下.
不過不知道為什麼.
在 firefox 下
用 innerHTML 上傳檔案會全掛, 沒一個上傳成功

用createElement 則只有第一個會上傳成功

btw 在 ie 下是都可以用

找了半天都沒找到資料... ... ...

代碼:
<script>
function addinp(){
   nu = $('addnu').value;
   if(isNaN(nu)) return false;
   ip_nu = $('ulinput').getElementsByTagName('input').length;
   for(i = 1 ; i <= nu ; i++) {
      if(ip_nu+i > 10)   break;
      
         elem = document.createElement('input');
         br = document.createElement('br');
         elem.setAttribute('type', 'file');
         elem.setAttribute('name', 'uf[]');
         $('ulinput').appendChild(br);
         $('ulinput').appendChild(elem);
      
      //$('ulinput').innerHTML += '<br/> <input type="file" name="uf[]" >';
   }
   return true;
}
</script>

<form name="addprocess" action="test.php" method="post" enctype="multipart/form-data">
   <div id="addfdiv" class="d_left">
      <select id="addnu" >
      <option >增加上傳檔案欄位</option>         <option value=1 >1</option>
      <option value=2 >2</option>   <option value=3 >3</option>
      <option value=4 >4</option>   <option value=5 >5</option>
      </select>
      <input type="button" value="增加" onclick="addinp();">
      <br/>
      <span class="conRed">最大上傳數10</span>
   </div>
   <div id="ulinput" class="d_right">
      <input type="file" name="uf[]" >
   </div>
   <div class="clear"></div>
   <div>
<input type="submit" >
</form>


回頂端
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.8) Gecko/20071008 Firefox/2.0.0.8
 個人資料  
引用回覆  
 文章主題 :
文章發表於 : 2007-10-25, 08:41 
離線
頭像

註冊時間: 2006-11-01, 15:18
文章: 132
alpe 寫:
在寫一個可以增加上傳欄位數的表單
code 如下.
不過不知道為什麼.
在 firefox 下
用 innerHTML 上傳檔案會全掛, 沒一個上傳成功

用createElement 則只有第一個會上傳成功

btw 在 ie 下是都可以用

找了半天都沒找到資料... ... ...

代碼:
<script>
function addinp(){
   nu = $('addnu').value;
   if(isNaN(nu)) return false;
   ip_nu = $('ulinput').getElementsByTagName('input').length;
   for(i = 1 ; i <= nu ; i++) {
      if(ip_nu+i > 10)   break;
      
         elem = document.createElement('input');
         br = document.createElement('br');
         elem.setAttribute('type', 'file');
         elem.setAttribute('name', 'uf[]');
         $('ulinput').appendChild(br);
         $('ulinput').appendChild(elem);
      
      //$('ulinput').innerHTML += '<br/> <input type="file" name="uf[]" >';
   }
   return true;
}
</script>

<form name="addprocess" action="test.php" method="post" enctype="multipart/form-data">
   <div id="addfdiv" class="d_left">
      <select id="addnu" >
      <option >增加上傳檔案欄位</option>         <option value=1 >1</option>
      <option value=2 >2</option>   <option value=3 >3</option>
      <option value=4 >4</option>   <option value=5 >5</option>
      </select>
      <input type="button" value="增加" onclick="addinp();">
      <br/>
      <span class="conRed">最大上傳數10</span>
   </div>
   <div id="ulinput" class="d_right">
      <input type="file" name="uf[]" >
   </div>
   <div class="clear"></div>
   <div>
<input type="submit" >
</form>


要不要試著逆向操作?

就是常見的向下展開式選單 (我不是指 select 組件) 使用的做法

先創出來後將其 hidden


回頂端
Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-TW; rv:1.8.1.8) Gecko/20071008 Firefox/2.0.0.8
 個人資料  
引用回覆  
 文章主題 :
文章發表於 : 2007-10-25, 12:38 
離線
[網站管理員]
頭像

註冊時間: 2004-09-27, 09:24
文章: 1685
你似乎用的是 Prototype.js?

_________________
korp + korp 中文站(沒精神更新)


回頂端
Mozilla/5.0 (Macintosh; U; Intel Mac OS X; en-US; rv:1.8.1.8) Gecko/20071008 Firefox/2.0.0.8
 個人資料  
引用回覆  
 文章主題 :
文章發表於 : 2007-10-25, 13:00 
離線

註冊時間: 2005-01-16, 17:02
文章: 3
來自: plant of earth
算是, 也算不是.
只有抓了這個func用.

代碼:
function $(){
   if (arguments.length > 1) {
      for (var i = 0, elements = [], length = arguments.length; i < length; i++)
         elements.push($(arguments[i]));
      return elements;
   }
   if (typeof arguments[0] == 'string')
      return document.getElementById(arguments[0]);
}


今天用了這個試了一下
http://the-stickman.com/files/mootools/multiupload/

結果. 在test code 沒問題.

但放到程式內就爆了... ...


回頂端
Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.8.1.8) Gecko/20071008 Firefox/2.0.0.8
 個人資料  
引用回覆  
 文章主題 :
文章發表於 : 2007-10-25, 13:32 
離線

註冊時間: 2005-01-16, 17:02
文章: 3
來自: plant of earth
GlinX 寫:
要不要試著逆向操作?
就是常見的向下展開式選單 (我不是指 select 組件) 使用的做法
先創出來後將其 hidden


現在感覺是新增的 node firefox 不認帳.
跟 form 的位置 有關!?


回頂端
Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.8.1.8) Gecko/20071008 Firefox/2.0.0.8
 個人資料  
引用回覆  
 文章主題 :
文章發表於 : 2007-10-25, 16:23 
離線
[網站管理員]
頭像

註冊時間: 2004-09-27, 09:24
文章: 1685
alpe 寫:
算是, 也算不是.
只有抓了這個func用.

代碼:
function $(){
   if (arguments.length > 1) {
      for (var i = 0, elements = [], length = arguments.length; i < length; i++)
         elements.push($(arguments[i]));
      return elements;
   }
   if (typeof arguments[0] == 'string')
      return document.getElementById(arguments[0]);
}


今天用了這個試了一下
http://the-stickman.com/files/mootools/multiupload/

結果. 在test code 沒問題.

但放到程式內就爆了... ...

mootools 也有自己的 $()。

_________________
korp + korp 中文站(沒精神更新)


回頂端
Mozilla/5.0 (Macintosh; U; Intel Mac OS X; en-US; rv:1.8.1.8) Gecko/20071008 Firefox/2.0.0.8
 個人資料  
引用回覆  
 文章主題 :
文章發表於 : 2007-10-25, 20:42 
離線
頭像

註冊時間: 2006-11-01, 15:18
文章: 132
alpe 寫:
GlinX 寫:
要不要試著逆向操作?
就是常見的向下展開式選單 (我不是指 select 組件) 使用的做法
先創出來後將其 hidden


現在感覺是新增的 node firefox 不認帳.
跟 form 的位置 有關!?


不知道

因為我還沒寫過你要的功能 @@

而且也有可能 IE 反而是異常的特例 (異常的"成功")...

如果要堅持這種寫法的話可能要問其他人了...


回頂端
Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-TW; rv:1.8.1.8) Gecko/20071008 Firefox/2.0.0.8
 個人資料  
引用回覆  
顯示文章 :  排序  
發表新文章 回覆主題  [ 7 篇文章 ] 

所有顯示的時間為 UTC + 8 小時


誰在線上

正在瀏覽這個版面的使用者:沒有註冊會員 和 3 位訪客


不能 在這個版面發表主題
不能 在這個版面回覆主題
不能 在這個版面編輯您的文章
不能 在這個版面刪除您的文章
不能 在這個版面上傳附加檔案

搜尋:
前往 :  
Powered by phpBB® Forum Software © phpBB Group
正體中文語系由 竹貓星球 維護製作
© moztw.org, Mozilla Foundation
MozTW,Mozilla 台灣社群