2013-08-27 23 views
1

我有一個表與不同類別,如許多行:阻力和組內的下降不同行jQuery中

Mobile 
    nokia 
    samsung 
     grand-1 
     grand-2 
    Apple 
Car 
Computer 
    Apple 
    Intel 
Mouse 

我們有類別,如手機,汽車,電腦和鼠標,我想拖放但是在它的組內,只有我們可以將grand-1拖放到grand-2,但不能在nokia或電腦下拖放。但整個三星集團可以拖動而不是諾基亞或蘋果。

類似的汽車和手機可以拖放與所有內部類別一起。

我已經使用了一些jQuery庫和tablednd插件,但我可以拖動每一行,因爲每個項目在表中都有不同。

有沒有解決方法?任何幫助,將不勝感激。

我在perl中使用以下子例程。

sub mainList { 

    my $hash = shift; 
    my $options = ''; 
    my $iter; 
    $options .= "<table id='sort' class='grid' > 
       <tbody>"; 
    $iter = sub { 
     my $hash = shift;  
     my $indent = shift || ''; 
     my $count = 0; 
     foreach my $k (sort keys %{$hash}) {      
      my $v = $hash->{$k}; 
      $options .= "<tr><td>$v->{title}<br><" unless $indent;   
      if($indent){ 
       $options .= "$v->{title} $indent";   
      }      
      if ($v->{children}){ 
       $iter->($v->{children}, "--"); 
      } 

      $options .= "</td></tr>" unless $indent;     
     } 

    }; 
    $iter->($hash); 
    $options .="</tbody></table>"; 
    return $options; 
} 

其中我傳遞一個散列引用來創建表。

回答

0

顯而易見的解決方案是使用單獨的表,每個組1個。如果這是你以後的事情,你可能不得不弄亂CSS邊界,使邊界看起來像1個無縫表。

<table><caption>Mobile</caption> 
<tr> 
<td>nokia</td> 
<td>samesung</td> 
</tr> 
</table> 
<table><caption>Computer</caption> 
<tr> 
<td>apple</td> 
<td>intel</td> 
</tr> 
</table> 
+0

感謝的建議,但表是通過函數動態創建。 –

+0

@ABHISHEKGOYAL - 我相信創建表的函數可以很容易地修改來創建多個表。如果您想分享其他人或我自己可以提供幫助的功能代碼。 –

+0

看到我上面的編輯。 –

0

您可以使用jQuery UI的,它有選項只下降到一定的元素