【问题标题】:sending JSON and using a dynamic data parameter发送 JSON 并使用动态数据参数
【发布时间】:2013-04-24 14:02:07
【问题描述】:

我在尝试将 JSON 发送到我的服务器时遇到了一些错误,我只是想确保这部分是正确的。

我担心的部分是数据参数。数据参数是动态的,我只是想确保我下面的方法是形成它的有效方法。

我这样构成:dataObj[itemName] = itemValue;

这是我的实现方式:

var itemName = "";
var itemValue = "";
var dataObj = {};

if (divId == "CustomerDiv") {
   itemName = "CustomerId";
   itemValue = id;
} else {
   itemName = "OwnerId";
   itemValue = id;
}
var ajaxMethod = "http://localhost:50151/api/webmethod/";
dataObj[itemName] = itemValue;
$.ajax({
   type: "PATCH",
   url: ajaxMethod,
   dataType: "json",
   data: dataObj
});

这是形成数据参数的有效方式吗?

谢谢!

【问题讨论】:

  • 不应该 typeGETPOSTPUTDELETE 之一?

标签: json jquery


【解决方案1】:

您确实使用了正确的合成器来生成数据对象。 您的 dataObj 的结果将是 {CustomerId: XX}(例如)。

请注意,type: "PATCH" 不正确,因为 type 需要正确的 HTTP 方法(如 GET、POST ...)。

【讨论】:

    【解决方案2】:

    我认为您构建动态参数的方式没有任何问题。您是否尝试过调试以确保在调用 ajax 之前对象看起来正确?它应该是{'CustomerId': val}{ 'OwnerId': val } 形式的简单对象。

    我注意到a post which may be related。它说“PATCH”不适用于所有版本的jQuery。它还说并非所有浏览器都支持补丁。

    您使用的是哪个版本的jQuery?你的浏览器和版本是什么?您收到什么错误?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-11-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多