未能触发onChange事件

时间:2012-09-08 21:44:18

标签: javascript jquery events search onchange

我有这段代码,用类“widget”搜索HTML元素的内容,并使用jQuery函数fadeIn()fadeOut()来显示与搜索词匹配的元素。我不知道如何分配搜索功能,因为我没有将它分配给搜索框的更改事件。 jQuery中onchange=的等价是多少?我目前的代码:

function search(text, elements) {
    var term = text.value.toLowerCase();
    var elms = $(elements);
    var elm;
    for (var i = elms.length; i > 0; i-=1){
        elm = elms.get(i);
        if (elm.text().toLowerCase().indexOf(term)>=0 ) {
            elm.fadeOut(500);
        } else {
            elm.fadeIn(500);
        }

    }
}

失败的内联脚本触发onchange:

<script type="text/javascript">
    $(document).ready(function() {
    $("#search").change(function() {
            search($("#search").text(),".widget");
        });
    });

2 个答案:

答案 0 :(得分:1)

我会使用keyup()而不是更改,只更改会在模糊时触发。

答案 1 :(得分:0)

  

$(“#search”)。change(function(){       搜索($( “#搜索”)文本(), “小部件”);     });

.change()是对JQuery中.on()函数的引用,所以如果你愿意,你可以这样重写它:

  

$(“#search”)。on('change',function(){       搜索($(本).VAL(), “小部件”。);     });