移动后的Jquery表行索引
我创建了一个“昨天”来帮助我找到一个移动后的Jquery表行索引,jquery,html,jquery-ui,jquery-ui-draggable,Jquery,Html,Jquery Ui,Jquery Ui Draggable,我创建了一个“昨天”来帮助我找到一个或一个的新索引,一旦使用jqueryui拖放功能对其进行了移动,它就可以完美地工作:) 然而,今天早上我一直想弄明白的一件事是。。。如何查找正在上移或下移的或的索引 例如:根据下表,如果我将“email”移到位置1,“other”将移到2的索引中。如何提醒此值及其RefID +--------+------------------+ | Ref ID | Issue relates to | +--------+------------------+ |
或一个
的新索引,一旦使用jqueryui
拖放功能对其进行了移动,它就可以完美地工作:)
然而,今天早上我一直想弄明白的一件事是。。。如何查找正在上移或下移的
或
的索引
例如:根据下表,如果我将“email”移到位置1,“other”将移到2的索引中。如何提醒此值及其RefID
+--------+------------------+
| Ref ID | Issue relates to |
+--------+------------------+
| 9342 | Other |
| 9392 | CRM |
| 9394 | CRM |
| 9308 | eMail |
| 9365 | CRM |
+--------+------------------+
这是一个我一直在玩的游戏
提前谢谢你们,伙计们
迈克
编辑:所以,我只是将它们移动了一点,如果您将另一行移到我们刚才移动的行上方,“其他”现在将位于索引中。哎呀!!当我看到这件事时,我变得越来越复杂。您需要使用:eq()
选择器来只针对所需的tr元素
var RefID = $('tr').eq(Newpos).find('td:first').html();
var RefName = $('tr').eq(Newpos).find('td:eq(1)').html();
无论移动了哪一行,您总是从第一行获取html
由于ui.item
是移动的
,因此您可以通过查看ui.item
var RefID = ui.item.find('td:first').html();
所以我可能没有正确地表达我的问题,但我在移动所有行之后,通过检查索引和RefID
就得到了我想要的
我的代码现在如下所示:
$(document).ready(function () {
$('tbody').addClass("DragMe");
$('.DragMe').sortable({
disabled: false,
axis: 'y',
items: "> tr:not(:first)",
forceHelperSize: true,
update: function (event, ui) {
var Newpos = ui.item.index();
var RefID = $('tr').find('td:first').html();
//alert("Position " + Newpos + "..... RefID: " + RefID);
$("#GridView1 tr:has(td)").each(function () {
var RefID = $(this).find("td:eq(0)").html();
var NewPosition = $("tr").index(this);
alert(RefID + " " + NewPosition);
});
}
}).disableSelection();
});
这是工作时间
谢谢你的帮助 当该行已作为ui.item
ohh可用时,无需搜索DOM两次即可获取该行。没有看到引用也被获取。