0
 var selectFormula = $(htmlContainer).find("ins").map(function (i, el) {
        return {
        fName: $(el).attr("data-record-name"),
        fID: $(el).attr("data-record-id"),
        fContent: $(el).text()
      }
        //fContent: $(htmlContainer).each(function () { if (!$(this).text().trim().length) { $(this).remove(); } }),
      });
//keep
      //var selFormInner = $(htmlContainer).find("ins").map(function (i, el) { return {
      //  fName: $(htmlContainer).find("ins[data-record-name]"),
      //  fID: $(htmlContainer).find("ins[data-record-id]"), 
      //  fContent: $(htmlContainer).find("ins").each(function () { if (!$(this).text().trim().length) { $(this).remove(); } })
      //}
      //}); //inner content  (array)
      if (selectFormula /*&& selFormInner.length*/) {
        // Get formula HTML from server
        $.postJSON(formulaUrl, {
          //name: selFormName.map(function () {
          //  return $(this).data('record-name');
          //}).toArray(),

          ////return information on the corresponding record id
          //recordID: selFormID.map(function () {
          //  return $(this).data('record-id');
          //}).toArray(),

          //return infmoration on the corresponding content of ins.
          //formula: selFormInner.map(function () {
          //  return $(this);
          //}).toArray()
          formula: selectFormula  };

这是我的脚本文件(所有 javascript)的一部分,它请求使用简写 $.postJSON 执行服务器端方法。我一直遇到这个“将循环结构转换为 JSON” 它发生在这一行:'data': JSON.stringify(data) 在包含的 postJSON 脚本文件中。

我的问题特别集中在循环结构上。这可能是错误的,但我认为它很可能指的是我在顶部声明的变量 selectFormula。这个结构有什么循环?我已经阅读了一些人得到同样的错误,但他们的例子似乎比我的更明显,一个引用自身的对象等。

我传递给服务器的这个 JSON 数据有一个在 c# 中以类似方式创建的结构,但这并不重要,因为它没有命中我的服务器端方法,这个错误都是客户端的。正如您在我的许多注释掉的代码中看到的那样,我已经尝试了很多东西。当然都是错的!

提前感谢您的任何见解。

4

1 回答 1

0

就我而言,在这里将结构转换为数组停止了循环结构错误。Jquery 的:.toArray() 方法。然后我所要做的就是编辑我的服务器端方法参数以匹配。无论如何,如果有人试图解决这个问题,谢谢!

于 2013-11-13T05:19:38.633 回答