13

这个错误是什么意思,我该如何解决?

TypeError: $.cookie is not a function
[Break On This Error]   

$($.cookie("inputFocus")).focus()

相关线路:

$($.cookie("inputFocus")).focus()

所有 jQuery 代码:

<script>
$(document).ready(function() {
    $("#state").change(function () {
    this.form.submit();
})
$($.cookie("inputFocus")).focus()

$("#supplier_name").val($("#supplier_name").val());
$("#aircraft_type").val($("#aircraft_type").val());
var typingTimer;                
var doneTypingInterval = 600;  

$('#supplier_name').keyup(function(){
    clearTimeout(typingTimer);
    if ($('#supplier_name').val) {
        typingTimer = setTimeout(doneTyping, doneTypingInterval);
    }
    $.cookie("inputFocus", "#supplier_name"); 
});

$('#aircraft_type').keyup(function(){
    clearTimeout(typingTimer);
    if ($('#aircraft_type').val) {
        typingTimer = setTimeout(doneTyping, doneTypingInterval);
    }
    $.cookie("inputFocus", "#aircraft_type"); });
function GetQueryStringParams(sParam)
{
    var sPageURL = window.location.search.substring(1);
    var sURLVariables = sPageURL.split('&');
    for (var i = 0; i < sURLVariables.length; i++)
    {
        var sParameterName = sURLVariables[i].split('=');
        if (sParameterName[0] == sParam)
        {
            return sParameterName[1];
        }
    }
}

var state = GetQueryStringParams('state');
var supplier_name = GetQueryStringParams('supplier_name');
var aircraft_type = GetQueryStringParams('aircraft_type');

    if(supplier_name === "" && state === "any" && aircraft_type === "") {
            $('#clear').attr('disabled','disabled');
    }
    $("#clear").click(function() {
    if(state === "any") {
        $("#aircraft_type").val("");
        $("#supplier_name").val("");
    } else {
        $('#state option:selected').remove();
        $("#aircraft_type").val("");
        $("#supplier_name").val("");    
    }
    });

function doneTyping () {
    $("form").submit();
}

});
</script>
4

4 回答 4

18

您需要在此代码段之前包含 jQuery cookie 插件。

于 2013-01-31T04:35:19.797 回答
11

在我的情况下,包括 jquery 文件两次(多次)也给出了同样的问题。

于 2015-05-26T07:11:16.187 回答
1

该错误的含义正是它所说的:$.cookie不存在。

jQuery 核心不包含任何与 cookie 相关的内容。有几个 cookie 库可以cookie$. 您需要先将一个添加到您的页面。

于 2013-01-31T04:35:52.333 回答
0

这意味着没有加载应该具有该功能的库。但是你可以使用 javascript 设置一个 cookie,在这里:

https://developer.mozilla.org/en-US/docs/Web/API/Document/cookie

于 2015-11-18T00:28:25.740 回答