2013-04-03 77 views
0

所以我有一個基於隱藏輸入內部時間的表中運行倒計時腳本的頁面。通過多個項目在頁面上的jQuery循環

每個輸入具有「ID =」 time_x」,其中從1

x增加每個上然後運行計時器到一個div的單獨的ID。

我的問題是我怎麼循環,並選擇通過的輸入列表,使得每個輸入能夠將ID饋送到它調用計時器jquery的功能。

例如

<input ..... id="time_1" value="1000"/> 
<input ..... id="time_2" value="2000" /> 

如何可以選擇THROU gh所有的輸入,得到的價值,然後將其傳遞給正確的divs。

感謝

+0

嗯...什麼?你能解釋一下這個更好還是張貼一些代碼? – melancia

+0

嗯..發表你的代碼,以便我們可以理解上下文 – DDK

+4

一個特殊的類比這樣的ids更「容易」,但是'$(「[id^= time _]」)each(function(){... });' – Andreas

回答

2

使用爲每一個新的元素類:

<input class="item" id="time_1" value="1000"/> 
<input class="item" id="time_2" value="2000"/> 
<input class="item" id="time_3" value="3000"/> 

$.each($('.item'),function(){ 
console.log($(this).attr('id')); 
}); 

,或者如果你想趕上輸入值更容易:

$.each($('.item'),function(){ 
    console.log($(this).attr("value")); 
    }); 
2

試試這個

$('input').each(function(v,i){ 
    console.log($(this).attr('id')); 
}); 

注意:這將循環通過所有輸入在douments ..它更好地給所有輸入你想循環,並得到它的編號

1

非jQuery的解決方案:

var inputs = document.getElementsByTagName('input'), 
id; 

for (var i = 0; i < inputs.length; ++i) { 
    id = inputs[i].id; 

    if (id.indexOf('time_') == 0) { 
     id = id.substr(5); 
     // do stuff with id and inputs[i].value 
    } 
} 
1

使用 「開始」 選擇:

$('input[id^="time"]').each(function() { 
    var value = $(this).val(); //get value 

    //now get right div and inject value 
    $(this).next('div').text(value);  
});