如果视口宽度小于X,有没有办法防止.submit中的jQuery?

时间:2015-11-06 08:27:07

标签: javascript jquery

我正在运行这样的jQuery,它会在更改表单值时自动提交:

$( "#results" ).change(function() {
    $(this).closest("form").submit();
    $.blockUI({ 
        message: $('#filters'),
    });
    $('[data-toggle="dropdown"]').parent().removeClass('open');
});

我想在移动设备上阻止这种情况发生,让用户有机会一次选择多个选项,然后手动提交。这可能吗?我正在考虑使用var w = e.target.innerWidth;w > 1 && w < 992,但我无法确定将其放在哪里。

3 个答案:

答案 0 :(得分:0)

如何将提交调用放在if-block中测试你提到的变量?然后提供一个正常的提交按钮,您可以使用css隐藏更大的屏幕。

$( "#results" ).change(function() {
  var w = e.target.innerWidth;
    if(w > 1 && w < 992){
      $(this).closest("form").submit();
    }
    $.blockUI({ 
        message: $('#filters'),
    });
    $('[data-toggle="dropdown"]').parent().removeClass('open');
});

我认为你只是想复杂化:)

答案 1 :(得分:0)

(window.innerWidth < x) || $(this).closest("form").submit();

答案 2 :(得分:0)

试试这样。

$( "#results" ).change(function(e) {
var w = e.target.innerWidth;
var mobile_width= 450;
     if(w > mobile_width){
           $(this).closest("form").submit();
           $.blockUI({ 
               message: $('#filters'),
           });
           $('[data-toggle="dropdown"]').parent().removeClass('open');
     }
});