2011-06-23 346 views
0

我有一個變量ver i = 1Javascript多增量可變解決方案

我有一個表格如下;

<table> 
<tr class="testrow"> 
<td class="prev">&nbsp;</td> 
<td class="data">&nbsp;</td> 
<td class="next">&nbsp;</td> 
</tr> 
<tr class="testrow"> 
<td class="prev">&nbsp;</td> 
<td class="data">&nbsp;</td> 
<td class="next">&nbsp;</td> 
</tr> 
<tr class="testrow"> 
<td class="prev">&nbsp;</td> 
<td class="data">&nbsp;</td> 
<td class="next">&nbsp;</td> 
</tr> 
<tr class="testrow"> 
<td class="prev">&nbsp;</td> 
<td class="data">&nbsp;</td> 
<td class="next">&nbsp;</td> 
</tr class="testrow"> 
<tr> 
<td class="prev">&nbsp;</td> 
<td class="data">&nbsp;</td> 
<td class="next">&nbsp;</td> 
</tr> 
</table> 

表中可能有更多的行..我想一個變量增加值1,當我爲prev點擊next和減少1。這可以很容易地完成。但我想要一些依賴行的變量。當我在第一行中單擊next時,變量值應爲2,但當我單擊任何其他行中的nextprev時,該值不應更改。這也應該是所有其他行的情況。變量的最小值應爲1.

如果有人向我提供了每行中間單元格中顯示的變量,那將會很有幫助。請注意,在此演示中,它不應該是++--中間單元格中的文本或數據。

Here是我的小提琴..

在此先感謝..

回答

1

我會使用jQuery.data()的變量存儲每個行中,當用戶點擊更改它上一頁/下一頁:

$(function() { 

    $(".testrow").each(function() { 
     var $row = $(this); 
     // set the initial value 
     $row.data("currentIndex", 1); 

     $row.find(".prev").click(function() { 
      $row.data("currentIndex", $row.data("currentIndex") - 1); 
      alert("currentIndex: "+$row.data("currentIndex")); 
     }); 
     $row.find(".next").click(function() { 
      $row.data("currentIndex", $row.data("currentIndex") + 1); 
      alert("currentIndex: "+$row.data("currentIndex")); 
     }); 

    }); 

}); 

的jsfiddle:http://jsfiddle.net/5TPCK/12/

0

你不能保持這些數組計數器(這將工作,如果行數已知的事先和靜態)?否則,您可以使用jquery data()函數將計數器附加到每個<tr>元素。

參見:http://api.jquery.com/jQuery.data/