如何确保 jQuery 使用 POST 在标头中提交正确的 JSON 键?
Posted
技术标签:
【中文标题】如何确保 jQuery 使用 POST 在标头中提交正确的 JSON 键?【英文标题】:How can I insure jQuery submits the correct JSON keys in the headers using POST? 【发布时间】:2017-05-29 09:13:05 【问题描述】:我有这个sn-p,
pKey = $(this).attr("data-pk");
var columnName = $(this).attr("name");
var changedData = $(this).val();
var data =
id : pKey,
columnName : changedData
;
$.post('/HelloWorld/Edit/', data, function ()
$("#status").html("<strong>" + pKey + ", " + myCurrentData + ": POST SUCCESS?:</strong>");
)
当我在 Chrome 中单步执行代码时,数据具有正确的列名。应该是这样的:
var data =
id: pKey,
lastName : changedData
;
这就是 Chrome 显示的内容,但是当我看到标题时,它会显示:
columnName : mydatathatgotchanged
换句话说,它保留了列名的字面“columnName”,然后是数据。它正在以某种方式发生变化。 changedData 值是正确的。
【问题讨论】:
您不能将变量用作 javascript 对象名称,请尝试使用 [] 表示法键入对象并使用您的变量名称。data[columnName] = changedData
我认为它现在正在工作。我试试看。
【参考方案1】:
这样使用:
...
var data = id: pKey;
data[columnName] = changedData;
...
【讨论】:
以上是关于如何确保 jQuery 使用 POST 在标头中提交正确的 JSON 键?的主要内容,如果未能解决你的问题,请参考以下文章
如何将 Django 的 CSRF 令牌添加到 jQuery POST 请求的标头?
如何使用 jquery $.post 确保以 UTF8 提交的变量
RestController - 将 POST 请求转发到外部 URL