【问题标题】:How to get the selected value(s) of a SharePoint Multi-select field via JavaScript query如何通过 JavaScript 查询获取 SharePoint 多选字段的选定值
【发布时间】:2018-02-02 17:50:32
【问题描述】:

我在 SharePoint 中有一个页面,它使用 JavaScript 构建了一堆表。我需要从列表中获取多选字段的选定值并将该值写入表中的列。我已经得到了我需要的所有其他值,但这个值要么抛出错误,要么返回 [Object Object],具体取决于我的编写方式。

fieldValue = listItemArray[i].get_item(listFieldArray[j].fieldInternalName);

返回[Object Object],当我在浏览器调试器的监视列表中展开fieldValue 时,它只返回列表中的第一个选项,而不是选定的值,但仍将[Object Object] 写入页面。

【问题讨论】:

标签: javascript sharepoint sharepoint-2010


【解决方案1】:

这是有效的答案:

Custom Lookup Field

更具体地说:

                value = listItemArray[i].get_item(listFieldArray[j].fieldInternalName);
            for (var z=0; z<value.length; z++) {
            var valueLU=value[z];
            fieldValue=valueLU.get_lookupValue();
            }

【讨论】:

    【解决方案2】:

    多选字段返回所有选定选项的数组。所以你必须迭代这个数组来访问所有存在的对象。

    再次选择的选项将是对象,因为查找字段存储对象(例如 5;#someValue)而不是实际值。 IT 有两个属性

    查找 ID (5)

    查找值(someValue)

    请参阅此链接了解更多信息 - SharePoint JavaScript CSOM: Best way to deal with Lookup fields?

    试试下面的代码。它应该适合你:

    objLength = oListItem.get_item('MultiLookup').length;
    
    for(var i=0; i<objLength; i++){
        oListItem.get_item('MultiLookup')[i].get_lookupValue();
        //oListItem.get_item('MultiLookup')[i].get_lookupId();
    }
    

    注意:

    MultiLookup 是多选字段的内部名称。

    【讨论】:

      猜你喜欢
      • 2015-07-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多