我如何知道我的数据表中是否选择了任何行?

dsingh23

我正在使用DataTables和validateEngine插件。

我的问题是,我只能知道分页中特定页面上选择了哪些行。因此,如果我在分页的第二页上选择了行,而在第一页上没有选择行,则会向我显示错误“请选择一行”。

我已经阅读了有关它的文章,但并不特定于我的代码,所以这就是我问这个问题的原因。

因此,除了我拥有的验证代码外,我还应该添加以下代码,

代码

$("#mSelector").on("click", "button[name='next'],button[name='finish']",               
function() {
var $stepSelector = $(".WizardStep:visible"); // get current step               

 var anyError = false;                      
 $stepSelector .find("input,textarea,select").each(function () {
 if (!$(this).validationEngine('validate')) {// validate every input element inside this step
           anyError = true;
    }

 });

 if (anyError)
  return false; // exit if any error found

});

});

代码

$(function () {
        var singleSelect =  $('.single-select').DataTable({
            'lengthMenu': ['300']
        });

        // Single row select
        $('.single-select tbody').on('click', 'tr', function () {
            if ($(this).hasClass('selected')) {
                $(this).removeClass('selected');
                $('#hId').val('');
            } else {
                singleSelect.$('tr.selected').removeClass('selected');
                $(this).addClass('selected');
                $('#Id').val($(this).attr('id'));
            }
        });

        var cId = $('#hdId').val();

        if (cId > 0) {
            $("#grid1.single-select")
                .find("[id='" + currentId + "']")
                .addClass('selected');
        }

        //selection
        var mGrid = $("#mSelector").DataTable({
            'lengthMenu': ['300']

        });
        $('#mSelector tbody').on('click', 'tr', function () {

            if ($(this).hasClass('selected')) {
                $(this).removeClass('selected');
                $('#mId').val('');

            } else {
                mGrid.$('tr.selected').removeClass('selected');
                $(this).addClass('selected');
                $('#mId').val($(this).attr('id'));
            } 

        });

代码

$("button[name='next'],button[name='finish']").click(function() {
  var $step = $(".Step:visible"); // get current step

  var ifError = false;

  $step.find("input,textarea,select").each(function() {
    if (!$(this).validationEngine('validate')) { // validate 
      ifError = false;
    }
  });

  if (ifError)
    return false; // exit if there is an error
});
Gyrocode.com

原因

DataTables出于各种原因会从DOM中删除不可见的行,因此,当您附加事件处理程序时,它仅适用于当前可见的元素。

解决方案

您需要通过在on()调用中提供选择器作为第二个参数来使用事件委托

替换此代码:

$("button[name='next'],button[name='finish']").click(function() {
   // ... skipped ...
});

$("#mSelector").on("click", "button[name='next'],button[name='finish']", function() {
   // ... skipped ...
});

mSelector您的表ID在哪里

从jQueryon()方法文档中:

委派事件的优势在于,它们可以处理以后在以后添加到文档中的后代元素中的事件。

请参阅jQueryon()方法文档和jQuery DataTables中的“直接事件和委托事件” –为什么单击事件处理程序不起作用以获取更多信息。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

我如何知道数据表中是否选择了任何行?

来自分类Dev

如何检查数据表是否包含任何行

来自分类Dev

我如何从数据表中选择数据

来自分类Dev

将数据加载到我不知道列的数据表中

来自分类Dev

我如何排序数据表

来自分类Dev

如何对我的数据表进行排序

来自分类Dev

如果我知道另一个表中的值但不知道ID,如何从表中选择行?

来自分类Dev

数据表选择我们想要动态的列

来自分类Dev

如何将通过树枝从对象生成的行添加到我的数据表中?

来自分类Dev

如何从数据表中删除行

来自分类Dev

我想从已排序的表中重建数据表

来自分类Dev

如何选择数据表1.9中当前页中显示的行?

来自分类Dev

我如何获取ID然后编辑数据表中的数据

来自分类Dev

如何使用laravel在数据表中显示我的数据库记录

来自分类Dev

在熊猫数据框中删除空格行(我不知道是否行)

来自分类Dev

我如何在vuetify数据表的行内将按钮单击事件与行单击事件分开

来自分类Dev

我如何获得与数据表上的类的行的索引

来自分类Dev

我如何总计数据表vb.net的总和列和行

来自分类Dev

为什么我只能删除数据表中的某些行?(jquery)

来自分类Dev

在我的代码中的数据表中foreach DataRow时如何获得高性能?

来自分类Dev

如何在按R数据表中的特定列分组之后选择行的子集

来自分类Dev

如何为数据表中的每个因子选择n个第一行?

来自分类Dev

JSF-如何从数据表中获取先前选择的行索引?

来自分类Dev

从数据表中,每组随机选择一行

来自分类Dev

选择Jquery数据表中的所有行

来自分类Dev

取消选择数据表中的所有选定行

来自分类Dev

在Linq中从数据表中选择不同的行

来自分类Dev

在PrimeFaces数据表中强制行选择

来自分类Dev

如何知道是否正确选择了我的Jsoup元素

Related 相关文章

  1. 1

    我如何知道数据表中是否选择了任何行?

  2. 2

    如何检查数据表是否包含任何行

  3. 3

    我如何从数据表中选择数据

  4. 4

    将数据加载到我不知道列的数据表中

  5. 5

    我如何排序数据表

  6. 6

    如何对我的数据表进行排序

  7. 7

    如果我知道另一个表中的值但不知道ID,如何从表中选择行?

  8. 8

    数据表选择我们想要动态的列

  9. 9

    如何将通过树枝从对象生成的行添加到我的数据表中?

  10. 10

    如何从数据表中删除行

  11. 11

    我想从已排序的表中重建数据表

  12. 12

    如何选择数据表1.9中当前页中显示的行?

  13. 13

    我如何获取ID然后编辑数据表中的数据

  14. 14

    如何使用laravel在数据表中显示我的数据库记录

  15. 15

    在熊猫数据框中删除空格行(我不知道是否行)

  16. 16

    我如何在vuetify数据表的行内将按钮单击事件与行单击事件分开

  17. 17

    我如何获得与数据表上的类的行的索引

  18. 18

    我如何总计数据表vb.net的总和列和行

  19. 19

    为什么我只能删除数据表中的某些行?(jquery)

  20. 20

    在我的代码中的数据表中foreach DataRow时如何获得高性能?

  21. 21

    如何在按R数据表中的特定列分组之后选择行的子集

  22. 22

    如何为数据表中的每个因子选择n个第一行?

  23. 23

    JSF-如何从数据表中获取先前选择的行索引?

  24. 24

    从数据表中,每组随机选择一行

  25. 25

    选择Jquery数据表中的所有行

  26. 26

    取消选择数据表中的所有选定行

  27. 27

    在Linq中从数据表中选择不同的行

  28. 28

    在PrimeFaces数据表中强制行选择

  29. 29

    如何知道是否正确选择了我的Jsoup元素

热门标签

归档