未捕获的TypeError:document.getElementById(...)。onclick不是函数

时间:2015-07-24 18:45:57

标签: javascript jquery html onclick

我正在运行此代码以尝试让用户选择表/矩阵的大小。用户可以在表格中单击以选择矩阵的大小。但是,当我尝试访问其中一个$(document).ready(function(){ $('.pickadate').datepicker({ format: "yyyy-mm-dd", language: "pt-BR", daysOfWeekDisabled: [0,6], autoclose: false, todayHighlight: true }).on('changeDate', function(e){ $(this).val(e.format('dd/mm/yyyy')); //My pifious tries }); $('.pickadate').on('hide', function(e) { $(this).val(e.format('dd/mm/yyyy')); }); }); 元素的onclick时,我收到了错误。

具体来说,我在第179行收到以下错误:<td>不是函数。

我在之前的stackoverflow问题上查找了这个错误,似乎人们过去做的事情是重新声明函数(在我的情况下,Uncaught TypeError: document.getElementById(...).onclick)是一个不同的函数/变量。在本文档中,唯一的onclick实例引发了错误。

您可以查看此网页的实时版本here,其来源位于下方。

编辑:好的,我想直接链接到我的页面会因为某些原因而崩溃。请尝试复制并粘贴网址:http://la.matthewpagecs.com/LinearAlgebraCalculator/index.html

onclick

2 个答案:

答案 0 :(得分:2)

onclick确实不是一个功能而是属性。您应该为其分配一个函数来处理事件。所以它应该是:

document.getElementById(i + "," + j).onclick = ceck;

答案 1 :(得分:1)

MDN - onclick是一个属性。

  

onclick属性返回当前元素的click事件处理程序代码。

document.getElementById(i + "," + j).onclick = ceck;

或者您可以使用匿名函数,如下所示:

document.getElementById(i + "," + j).onclick = function() { alert("Hello"); };