-1

我正在使用 SPServices 来更新一个字段,但是它没有更新并且没有引起任何挫败感。

我已经能够使用此代码更新其他字段,所以我只能得出内部字段名称不正确的结论。

$().SPServices({
operation: "UpdateListItems",
async: false,
batchCmd: "Update",
listName: "Staff Rewards",
ID: $(this).attr("ows_ID"),
valuepairs: [["Processed%5Fx0020%5FDate", "Processed"]],
completefunc: function (xData, Status) {

}


});

InfoPath 2010 中的字段名称为“已处理日期”,但在使用视图 URL 和“列设置 URL”的 SharePoint 中提升字段名称后,该字段名称已变为“Processed_x0020_Date”,字段名称为:Processed%5Fx0020%5FDate

我已经尝试了所有这些字段名称,但仍然无法更新列表!

4

2 回答 2

2

使用 with 语法,必须指定列StaticNamesvaluepairs和值的数组:

$().SPServices({
operation: "UpdateListItems",
async: false,
batchCmd: "Update",
listName: "Staff Rewards",
ID: $(this).attr("ows_ID"),
valuepairs: [["Processed_x0020_Date", "Processed"]],
   completefunc: function (xData, Status) {

   }
});

此外,确保为更新操作传递了正确的列表项 ID:

$(this).attr("ows_ID")
于 2014-05-12T11:20:26.527 回答
0

好的,终于想通了!!,不得不使用“检查元素”来检查 SharePoint 认为我的字段的内部名称,你会相信吗......似乎出于某种原因,对于更长的名称,SharePoint 只是在之后终止它们看起来像 32 个字符......我的字段名称(内部名称)显示在最终 HTML 中的一个评论中(使用“检查元素”查看)是“Previous_x0020_Request_x0020_Sta”,其中我的显示名称是“上一个请求状态”

这很奇怪,有人怎么会知道这个:-(哦,SharePoint!!

我的内部名称在 32 个字符后被终止的结论可能是错误的,但我的代码现在可以工作了!使用截断的名称....如果不是 SharePoint,它可能是 SpServices 中的内容....但据我所知 ....这似乎是一个 SharePoint 问题...这就是它现在的样子。

于 2016-12-14T10:20:34.320 回答