我们使用jQuery Datatables插件将更新记录保存在多行中。
一旦验证失败,还会为所有列构建验证。
我们有以下代码行专注于验证失败的元素。
$(this).focus();
但是,如果某些其他页面上的验证失败($(this)不在当前页面上),则无效。
作为解决方法,我们认为我们会点击页码超链接
$(#identifier).trigger('click');
问题是
"How to know if an element with id A ( $(#A)) is in which page of jQuery Table ?"
一旦我们知道问题将得到解决。
答案 0 :(得分:1)
在这里,我编写了一个js函数来移动到具有给定行的页面(带有类&#34的行; selectedItem"在这种情况下)。应该可以重写代码以查找任何元素,而不仅仅是行,以备不时之需。
function moveToPageWithSelectedItem() {
var numberOfRows = itemsTable.data().length;
var rowsOnOnePage = itemsTable.page.len();
if (rowsOnOnePage < numberOfRows) {
var selectedNode = itemsTable.row(".selectedItem").node();
var nodePosition = itemsTable.rows({order: 'current'}).nodes().indexOf(selectedNode);
var pageNumber = Math.floor(nodePosition / rowsOnOnePage);
itemsTable.page(pageNumber).draw(false); //move to page with the element
}
}