jQuery - TypeError:undefined在搜索数组时不是函数

时间:2015-03-13 17:44:24

标签: jquery uncaught-typeerror

我正在为一个按钮写一个onclick听众,但收到一个

  

未捕获TypeError: undefined不是此代码第4行的函数错误:

$("button#searchKeyword").click(function(){
    var searchTerm = $("input#searchBox").val();
    var i = myArr.indexOf(searchTerm)+1;
    var locationID = myArr[i].value();
    alert(searchTerm + " " + i + " " + locationID );   
});

locationID是4或5位整数。 myArr是一个字符串和数字数组(即[string, number, string, number...])。

我在阅读this后尝试添加var $ = jQuery.noConflict();。但那里的解决方案似乎都不适用于我。

我想知道问题是否是解析问题?我是否需要将i解析为integer?如果是这样,我该怎么做?

1 个答案:

答案 0 :(得分:1)

如果myArr是一个字符串和数字数组,那么当您调用myArr[i].value()时会收到错误,因为没有为数字或字符串定义value

您可能还遇到i超出数组边界的问题,因为您向它添加了1。 (这不应该导致此错误消息,但值得注意)