【问题标题】:Javascript: Uncaught TypeError: n is not a functionJavascript:未捕获的类型错误:n 不是函数
【发布时间】:2017-10-06 14:25:20
【问题描述】:

我发现了很多关于这个错误的文章,但看起来每个案例都是特殊的,所以我不能很好地回答。

所以我的代码应该是这样的:

  1. 在列表中查找特殊字段(ID:101,这是列中的唯一编号,因此仅定位 1 个字段)。

  2. 从中获取号码。

  3. 将该数字更新为数字+1

但是我得到一个错误“Uncaught TypeError: n is not a function”,而详细信息针对的是 jquery.min.js 和 sharepointplus.min.js。 (我不能确定,但​​可能基于 sharepointplus 的代码部分工作正常,因为我可以升级其他代码中的严重字段)

$(document).ready(function () 
{
  var ID=101;
  $SP().list("INNList", "http://.../sites/Registry/").get(
  {
    fields: "n1k8"
  },
  {
    where: 'INNnumber = '+Number(ID)
  }, alert("step1: "+Number(szam)),  //this alerts works
  function getData(info) //probably something wrong around here (alerts not works after this part)
  {
    for (var i = 0; i < info.length; i++)
    {
      $SP().list("INNList", "http://.../sites/Registry/").update(
      {
        n1k8: (Number(info[i].getAttribute("n1k8")) + Number("1"))
      },
      {
        where: 'INNnumber = '+Number(ID)
      });
    }
  });
});

我最近才开始使用 javascript,所以它甚至可能是一个微不足道的错误。非常感谢您的建议!

【问题讨论】:

  • 这可能是您引用这些 js 文件的顺序,而不是您的代码。
  • 多次引用同一个js文件也会导致问题
  • 我的订单是:1. jquery.min.js, 2. jquery.SPServices-2014.02.min.js, 3. sharepointplus-4.0.min.js。而且我的脚本中只有 1 个参考。我试图更改顺序,但看起来我得到了同样的错误。但是非常感谢你的想法!如果您有其他建议,请告诉我。
  • 如果您将 $ 用于 sharepointplus(或任何其他第 3 方),那么您不能将 $ 用于 jQuery 的简写

标签: javascript jquery sharepoint error-handling


【解决方案1】:

如果您对 sharepointplus(或任何其他第三方)使用简写“$”,那么您不能将“$”用于 jQuery。

尝试用“jQuery”替换“$”

示例: 替换:$(文档) 与:jQuery(文档)

【讨论】:

  • 非常感谢您的想法!我将 $(document) 更改为:jQuery(document),但仍然出现相同的错误 :( 我的程序中还有其他代码,我将 $ 用于 document 和 sharepointplus,但运行良好所以可能是别的东西。如果你有任何其他建议让我知道,我会测试它。感谢您的帮助!
  • 你引用的JS文件的顺序是什么?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-11-19
  • 2014-07-21
  • 1970-01-01
  • 2019-06-06
相关资源
最近更新 更多