在页面加载时进行初始验证后验证if语句
validate if statement after initial validation at page load
如果满足两个条件,我将使用if语句对元素执行.load()操作:
if (current_items <= {{total_hits}} && infinite_scroll != 'disabled') {
$(window).scroll(function () {
if ($(document).height() <= $(window).scrollTop() + $(window).height()) {
var sort_by = $('#sort_by').val();
if ($('input:checkbox:checked').val()) {
var category_filter = ""
$('input:checkbox:checked').each(function() {
category_filter += "'""+$(this).val()+"'","
});
category_filter = category_filter.substring(0, category_filter.length - 1);
}else{
var category_filter = "all"
}
$.get('/search_ajax/{{query}}/'+sort_by+'/'+current_items+'/'+category_filter, function(data){
$(data).appendTo("#container");
current_items = $('[class="small-3 columns"]').length;
});
}
});
}
它在第一个条件下运行良好,但现在我想根据第二个条件,即变量infinite_scroll禁用/启用它。此变量在加载时处于"启用"或"禁用"状态,然后工作正常。问题是,当我用另一个jquery调用更改值时,它不起作用。我想if在加载时会被检查一次,但不会再次进行评估,这就是它不起作用的原因。使用jquery调用后,变量确实会更改值。
关于如何发现问题或使用其他方法,有什么想法吗?
谢谢,Isaac
是的,if
语句在页面加载后不会自动重新求值,但您可以通过将上述代码包含在函数中并在每次更改infinite_scroll
变量后调用它来实现这一点,以下是解决方案:
function changeSroll(current_items, infinite_scroll) {
if (current_items <= {{total_hits}} && infinite_scroll != 'disabled') {
$(window).scroll(function () {
if ($(document).height() <= $(window).scrollTop() + $(window).height()) {
var sort_by = $('#sort_by').val();
if ($('input:checkbox:checked').val()) {
var category_filter = ""
$('input:checkbox:checked').each(function() {
category_filter += "'""+$(this).val()+"'","
});
category_filter = category_filter.substring(0, category_filter.length - 1);
}else{
var category_filter = "all"
}
$.get('/search_ajax/{{query}}/'+sort_by+'/'+current_items+'/'+category_filter, function(data){
$(data).appendTo("#container");
current_items = $('[class="small-3 columns"]').length;
});
}
});
}
}
现在,每次更改infinite_scroll
变量时,添加以下行:
changeSroll(current_items, infinite_scroll);
希望这能达到你想要的效果。
相关文章:
- jQuery 在自定义方法中使用 if 语句进行验证
- Javascript - 需要日期验证 IF 语句
- 带有多个if语句的javascript表单验证
- 使用if-else-if-true检查(验证)单选按钮如果未检查则无警报必须检查警报
- Javascript if语句问题,以及如何在jquery中验证颜色
- ng if不验证函数
- Javascript验证不起作用——只要一个if语句为true,它就会停止所有if语句
- IF 语句验证.js
- If-Statement中的Javascript元素验证
- 使用正则表达式在 JavaScript/jQuery 中使用多个 if 语句验证文本
- 在验证元素是否存在时如何考虑 ng-if
- 在页面加载时进行初始验证后验证if语句
- 带有If/Else语句的Jquery验证规则
- ELSE IF语句没有验证信息
- Jquery验证插件if语句
- Jquery if条件验证
- 表单验证-如何使用If和Else If
- javascript中密码验证的If/else语法
- JavaScript,如何验证if字符串
- Javascript验证if语句