2010-08-04 73 views
3

所以我有幾個名稱會話的輸入,他們增加.... session0 session1 session2。 如果我想通過一個循環運行它們,我會怎麼做。我使用jQuery。具有相似名稱的多個輸入

例如..

for(i=0,i<10,i++) 
{ 
var num = (session + i).value + i; 
} 

所以,我要的是循環要經過所有前綴的會話,並輸出自己的價值觀給一個變量輸入。這可以進入數組。 如果數組顯然看起來更像。

num[i] = stuff+i; 

謝謝。

奧凱以及我結束了JavaScript的打算。感謝所有幫助它運作良好。這是最終的代碼。

function get() 
{ 
var alldata; 
var values = []; 
     $("input[name^='media']").each(function(i, anInput) { 
     var check = values[i] = $(anInput).attr('checked'); 
     if(check == true) 
     { 
     var ID = "session" + i; 
     var type = $(anInput).attr('value'); 
     if(i > 9) 
     { 
     var cont = "#ex"+ i; 
     } 
     else{ 
     var cont = "select[name='" + ID + "']"; 
     } 
     var scope = $(cont).attr('value'); 
     if(!alldata) 
     { 
     alldata = type + ': ' + scope + ' '; 
     } 
     else 
     alldata = alldata + ' ' + type + ': ' + scope + ' '; 
     }; 

     }) 
$('#sessions').attr('value',alldata); 
} 

回答

4

使用starts with選擇^each功能是這樣的:

var arr = new array(); 
$('input[name^="session"]').each(function(){ 
    alert($(this).val()); 
    // arr[] = $(this).val(); 
}); 
+0

酷謝謝,我會嘗試。我從來沒有見過這樣的事情。 – JamesTBennett 2010-08-04 18:07:48

+0

輕微變化,使用映射將所有內容都放入數組中。 'arr = $('input [name^=「session」]')。map(function(){return this.value;});' – 2010-08-04 18:09:28

+0

@Patrick McElhaney:Yup更容易/更好。謝謝:) – Sarfraz 2010-08-04 18:11:15

4

如何:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
<html> 
    <head> 
     <script type="text/javascript" charset="utf-8" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script> 
     <script type="text/javascript" charset="utf-8"> 
     $(document).ready(function() { 
      var values = []; 
      $("input[name^='session']").each(function(i, anInput) { 
      values[i] = $(anInput).val(); 
      }) 
     }) 
     </script> 
    </head> 
    <body> 
     <input type="text" value="5" name="session0" /> 
     <input type="text" value="7" name="session1" /> 
     <input type="text" value="2" name="session2" /> 
     <input type="text" value="1" name="session3" /> 
    </body> 
</html> 
+0

我太慢了:) – 2010-08-04 18:13:13

+0

但是你做了一個完整的工作例子的麻煩。有一個upvote。 :-) – 2010-08-04 18:16:46

+0

哈,謝謝!我不使用這個網站很多,但是當我這樣做的時候,我嘗試提供最「完整」的例子,我可以在幾分鐘內甩掉。 – 2010-08-04 18:22:19

相關問題