javascript - 如何在输入第一个字母后立即触发 jquery keyup 事件?

标签 javascript jquery pagination

我正在尝试为我正在从事的项目构建一个搜索工具。基本上,我过滤页面上的项目列表,然后显示匹配的项目。我遇到的问题是我正在使用分页,只要输入第一个字母,分页事件就不会触发,直到您输入第二个字母。当输入第一个字母时,底部的 context.paginate() 和 context.createPages(4) 函数不会触发。除此之外,它工作得很好,只是有点麻烦,我不明白为什么那些特定事件没有立即触发。包括解包在内的所有内容都会立即生效,只是最后两个函数不行。任何人,对为什么会这样有任何想法?

$(this).on("keyup change", function() {
    var searchVal;
    console.log(searchVal);
    radios = $(section).prev(".filterform").find("input[type='radio']");
    //Find which search filter option is checked and use that class for the find 
    for (var i = 0; i < radios.length; i++) {
        if (radios[i].name && $(radios[i]).prop("checked")) {
            searchVal = radios[i].value;
        }
    }
    var filter = $(this).val();
    if (filter) {
        $(section).find("." + searchVal + ":not(:contains(" + filter +      "))").closest(".projects").slideUp();
        $(section).find("." + searchVal + ":contains(" + filter + ")").closest(".projects").slideDown();
    } else {
        $(section).find(".projects").slideDown();
    }
    $(section).find(".pages > .projects").unwrap();
    context.createPages(4);
    context.paginate();
});

最佳答案

element.keypress(function(e){
//...
if(this.selectionStart==0){
    //Do something
}

关于javascript - 如何在输入第一个字母后立即触发 jquery keyup 事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38313274/

相关文章:

javascript - 为 Firebase 存储中的文件创建 readStream

javascript - 单击按钮时页面会奇怪地刷新

jquery - jQuery slider 在cakephp 3中不起作用

javascript - Gulp webpack 仅加载 jquery 一次

ios - 在进行分页时,新数据已添加到 TableView 中,时间 TableView 滚动在 IOS swift 中跳跃

javascript - 限制 TypeScript 中的类型组合

javascript - JS Code over AJAX with jQuery - 这种方法安全吗?

javascript - 无法理解为什么事件未定义

CakePHP 自定义路由分页

java - 如何从 S3 读取分页的 Parquet 结果