sharepoint 2010 извлекает значение столбца Lookup с помощью jscript - PullRequest
1 голос
/ 31 октября 2011

Я пытаюсь получить содержимое поля поиска в списке sharepoint 2010. (мой список) Я делаю это с помощью конструктора sharepoint и файла javascript.js Сценарий Java работает для большинства столбцов в моем сценарии.

Но не для поиска столбцов.

Мой столбец Поиск столбца называется Устройство для значений столбцов поиска получается:

  [object Object]

включая скобки [], я хотел бы знать, как развернуть его, чтобы показать содержимое списка.

Вот мой код для получения списка данных

    <script type="text/javascript">  
    function ViewItem()  {
    var context = new SP.ClientContext.get_current(); 
    var web = context.get_web();
    var list = web.get_lists().getByTitle('myList');
    var query = SP.CamlQuery.createAllItemsQuery();
    allItems = list.getItems(query);
    context.load(allItems, 'Include(Title,Device)');
    context.executeQueryAsync(Function.createDelegate(this, this.success),Function.createDelegate(this, this.failed));
    }
    function success() {
    var TextFiled = "";
    var ListEnumerator = this.allItems.getEnumerator();
    while(ListEnumerator.moveNext())
    {
    var currentItem = ListEnumerator.get_current();
    TextFiled += currentItem.get_item('Title') + '->' 
    TextFiled += String(currentItem.get_item('Device')) + '<-' 
    TextFiled += + '\n';
    }
    alert(TextFiled);
    }
    function failed(sender, args) {
    alert("failed. Message:" + args.get_message());
    }</script><a onclick="Javascript:ViewItem();" href="#">View my Items</a>

`

Ответы [ 2 ]

0 голосов
/ 25 декабря 2014

Вы можете прочитать данные столбца поиска, указав get_lookupId() [Для идентификатора] или get_lookupValue() [Для значения]

// Load ClientContext & oWeb here..
this.oList = oWeb.get_lists().getByTitle("Documents");
var camlQuery = new SP.CamlQuery();
camlQuery.set_viewXml('');
this.oListItem = oList.getItems(camlQuery);
this.clientContext.load(this.oListItem);
this.clientContext.executeQueryAsync(
    Function.createDelegate(this, successGetListHandler),
    Function.createDelegate(this, errorGetListHandler)
);

function successGetListHandler() {
    var listItemInfo = '';
    var listItemEnumerator = this.oListItem.getEnumerator();
    while (listItemEnumerator.moveNext()) {
        var oListItem = listItemEnumerator.get_current();
        listItemInfo += '\nTitle: ' + oListItem.get_item('FileLeafRef') + 
            '\nChecked out User: ' + oListItem.get_item('CheckoutUser');
    }

    jQuery('.checked-out-count').html('List Name is : ' + oList.get_title() + '\n ' + listItemInfo);
}
function errorGetListHandler() {
    alert("Request failed: " + arguments[1].get_message());
}

Для получения дополнительной информации вы можете проверить хороший ответ в этом вопросе .

0 голосов
/ 01 ноября 2011

вам нужно привести его как SP.FieldLookupValue, например:

SP.FieldLookupValue _value = listItem.FieldValues["Device"] as SP.FieldLookupValue;
var mylookupvalue= _value.LookupValue;

см. Получить значение из поля поля поиска и SP.FieldLookupValue Properties

...