javascript - 调用函数时为"Uncaught TypeError: object is not a function"

标签 javascript jquery wordpress

我的代码遇到了这个奇怪的错误。我正在尝试通过添加特定触发器来解决[过去]在 Chrome 中工作但在 IE 中无法工作的页面(令人惊讶),但现在我得到了 Uncaught TypeError: object is not a function Chrome 控制台中出现错误。

据我所知,这是一个函数(正在进行中):

<script type="text/javascript">
    function validate() {                
            var id = jQuery("form").attr('id');
            var formid = "#"+id;
            jQuery(formid).add("<input type=\"hidden\" name=\"APC_UPLOAD_PROGRESS\" value=\""+id+"\" />");
            jQuery("#validate").hide();
            jQuery("#submitme").show();
    }
</script>

它由以下代码调用:

<button id="validate" onClick="validate()" type="button">Validate</button>

我没有使用<input type="submit>因为我有额外的表单提交 JS 来运行。

因此,当我单击按钮时,页面不执行任何操作,并且我在控制台中收到标题所述错误。

我尝试过使用jQuery.fn.validate = function(){};但没有效果。

为了让这更有趣,该网站是 Wordpress,这个特定页面加载 jQuery 和 MooTools 以及直接 JS。

简而言之;我犯了什么愚蠢的小错误?谷歌上的所有搜索都有多年的历史,并且是由我认为是类生成的。

更新

控制台说这一行是错误

<button id="validate" onClick="validate()" type="button">Validate</button>

更新2

Pastbin 链接到表单代码 http://pastebin.com/3Kw5vdhn

最佳答案

在 Chrome 浏览器中,您可以要求 JS 执行在出现异常时停止。要启用此功能,请打开 JS 控制台,然后单击主面板和控制台之间 mustache 左侧的小图标。如果图标为蓝色,您将停止所有异常的执行,如果图标为红色,则仅在未捕获的异常上停止执行,如果图标为灰色,则根本不停止。

因此单击直到它变成红色以停止未捕获的异常。运行您的网页,执行应该在引发异常时完全停止。然后您可以检查验证变量的值。

我怀疑这是您的代码与您正在加载的其他代码之间的某种全局变量冲突。要快速检查,请将 validate 重命名为 QQvalidate 并尝试您的代码。

关于javascript - 调用函数时为"Uncaught TypeError: object is not a function",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10713258/

相关文章:

javascript - Focus() 在使用 ios 10 safari 浏览器的 ionic 中不起作用

javascript - 如何创建一个与数组具有相同属性的javascript对象?

javascript - window.location 与相对 url

javascript - JQuery:根据复选框单击更改表内行的颜色

javascript - 复杂菜单的想法

wordpress - 视觉 Composer ;自定义元素不会加载 textarea_html/'content'

javascript - 如何将变量从 javascript 发送到 django 中的 View

javascript - 如何在用户输入后立即获取输入字段的值

javascript - 如果 ul 存在则 addClass (jQuery)

css - WordPress CSS : Center Iframe Object