Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 控制台显示未捕获的TypeError:对象不是函数,其他一切正常_Javascript_Jquery_Knockout.js - Fatal编程技术网

Javascript 控制台显示未捕获的TypeError:对象不是函数,其他一切正常

Javascript 控制台显示未捕获的TypeError:对象不是函数,其他一切正常,javascript,jquery,knockout.js,Javascript,Jquery,Knockout.js,简短代码示例: JS: HTML: <div id="Menu"> <p>Stuff In list:</p> <select id="resultsDb" data-bind="foreach:values"> <option data-bind="text:annotation"> </select> </div> <br> <a href="java

简短代码示例:

JS:

HTML:

<div id="Menu">
    <p>Stuff In list:</p>
    <select id="resultsDb" data-bind="foreach:values">
        <option data-bind="text:annotation">
    </select>
</div>
<br>
<a href="javascript:null()" id="delete">delete</a>

列表中的内容:


所有这些都是在knockout中填充一个可观察的数组,并提供一个按钮来在单击时删除元素。但是,如果单击该按钮,控制台将显示错误
未捕获类型错误:对象不是函数。从功能的角度来看,一切似乎都正常。是否有办法修复此错误(如果它是一个错误)


编辑:错误行(对于chrome)表示VM994:1,(匿名函数)

这是由于尝试调用非函数的
null
而导致的。除了
javascript:null()
之外,您可以只使用
#
甚至完全关闭
href

我想您需要
javascript:void(null)


无论哪种方式,您都应该使用knockout而不是jquery来处理您的单击。另外,对于这样的按钮,通常最好不要使用
a
元素。您最好使用
按钮
,或者
span

将href关闭不会使其无法读取吗?@KevinL否;它仍将响应单击事件。
<div id="Menu">
    <p>Stuff In list:</p>
    <select id="resultsDb" data-bind="foreach:values">
        <option data-bind="text:annotation">
    </select>
</div>
<br>
<a href="javascript:null()" id="delete">delete</a>