JQuery:.hide()不是一个有效的函数

时间:2010-06-21 03:07:31

标签: javascript jquery syntax

Firebug抱怨这条线:

$("#original-description").text(response['course']['original_description']).hide();

我是否有语法错误?看起来很好。

更多背景信息:

bindOnSuccess($('#course-search'), function(response) {
    if (!response) {
        $("#system-status").text("Sorry, no course could be found for that search.");
    }
    else {
        $(".dept-code").text(response['course']['dept_code']);
        $(".course-number").text(response['course']['number']);
        $(".course-title").text(response['course']['title']);

        $("#div-original-description").show();
        $("#original-description-teaser").show();

                    // error here
        $("#original-description").text(response['course']['original_description']).hide();

        $("#td-required-for").text(response['analysis']['cRequiredFor']);
    }
});

response是一个JSON对象。这个问题可能是由无效的下标引起的吗?

Firebug的错误是:

$("#original-description").text(response.course.original_description).hide is not a function

1 个答案:

答案 0 :(得分:4)

其他答案指出错误 - .text()返回jQuery对象。您可能正在引用未定义的属性。我可以复制一下:

$('<p>').text(undefined).hide()

确保您在JSON中引用了正确的属性。

 TypeError: $("<p>").text(undefined).hide is not a function { message="$("<p>").text(undefined).hide is not a function",  more...}

如果您想要实时查询对象,您只需执行

即可 回调函数中的

window.o = response,只需在Firebug控制台中使用它。