jQuery .change突然不再工作了

时间:2013-06-03 16:57:22

标签: javascript jquery html ajax onchange

好吧,我有以下jQuery:

    $("input#search").live("keyup", function(e) {
    // Set Timeout
    clearTimeout($.data(this, 'timer'));

    // Set Search String
    var search_string = $(this).val();

    // Do Search
    if (search_string == '') {
        $("ul#results").hide();
        $('h4#results-text').hide();
    }else{
        $("ul#results").show();
        $('h4#results-text').show();
        $(this).data('timer', setTimeout(search, 100));
    };
});

$("select#search2").change(function(e) {
    // Set Timeout
    clearTimeout($.data(this, 'timer'));

    // Set Search String
    var search_string = $("select#search2 option:selected").text();

    // Do Search
    if (search_string == '') {
        $("ul#results").hide();
        $('h4#results-text').hide();
    }else{
        $("ul#results").show();
        $('h4#results-text').show();
        $(this).data('timer', setTimeout(search2, 100));
    };
});

现在我显然有一个普通的文本输入和一个选择,它们会触发不同的功能。输入运行良好,Ajax执行得很好。现在选择.change的工作正常,直到今天。我不知道我改变了什么,但它没有用。

我给我的选项用标签(选项值=“”)标记他们自己的值,并且选择正确命名并具有唯一ID。

我不知道出了什么问题。这些或Ajax请求有什么问题吗?

function search() {
    var query_value = $('input#search').val();
    $('b#search-string').html(query_value);
    if(query_value !== ''){
        $.ajax({
            type: "POST",
            url: "url...",
            data: { query: query_value },
            cache: false,
            success: function(html){
                $("ul#results").html(html);
            }
        });
    }return false;    
}

function search2() {
    var query_value = $("select#search2 option:selected").text();
    $('b#search-string').html(query_value);
    if(query_value !== ''){
        $.ajax({
            type: "POST",
            url: "url...",
            data: { query: query_value },
            cache: false,
            success: function(html){
                $("ul#results").html(html);
            }
        });
    }return false;    
}

0 个答案:

没有答案