2012-08-04 35 views
0

我有这个JQuery代码,如果我点击它的行,应该给我一个列的结果。我使用Yii,但问题主要在于Jquery。获取数据库表上每一行的值

$(document).on('click', 'td.myLink a', function(){ 
    $('input[name=\"ECCategory[ParentID]\"]').val($('#mainID').html()); 

     $('.search-form form').submit(); 
}); 

这就是我所拥有的。无论我点击哪一行,这样做都会为我提供第一行(mainID列)的结果。我想要的例如是点击第5行并获得第5行的mainID。

回答

0

ID是唯一的。所以只有一个元素可以具有编号mainID。您可能希望在click事件中使用$(this)从所选元素进行搜索。例如:

$(function($){ 
    $('td.myLink a').click(function(){ 
     var tr = $(this).parent().parent(); // selected row 
     // get columns that you want from selected row using tr.find('...') 
     // ... 
    } 
}); 
+0

很好说,谢谢。只是想知道为什么我们要做这个var tr = $(this).parent()。parent(); ......父母()。父母()在这里究竟做了什么? – 2012-08-04 12:31:39

+0

不用担心。 '$(this)'是'a'的jQuery对象。调用'parent()'获取其父'td'对象。再次调用它给出了'td'的父节点,它是'tr'-行 – Kurt 2012-08-04 13:05:58

+0

从现在开始我会记住这一点。欣赏它。 – 2012-08-04 13:26:06