none
Обновление открытого элемента списка RRS feed

  • Вопрос

  • Добрый день подскажите пожалуйста как определить текущий открытый элемент списка.

    var itemId = ??? 

    var body = "{ '__metadata': { 'type': 'SP.Data.AgreementListItem' },  'Osvoenie': '"+ Summ_ks3 +"', 'Nepsvoen_avans' : '"+ Nepsvoen_avans +"', 'Summ_oplati' : '"+ (Summ_avans + Summ_cheta) +"', 'Summ_oplachen_chet' : '"+ Summ_cheta +"', 'Summ_oplachen_GV' : '"+ Garant_yder +"'}"; 

    console.log(Summ_ks3);
    updateListItem("Договора", itemId, body);

    //Функция обновления элемента function updateListItem(listTitle, itemId, body) { var webUrl = _spPageContextInfo.webAbsoluteUrl; var uri = webUrl + "/_api/web/lists/GetByTitle('"+listTitle+"')/Items("+ itemId +")"; var query = jQuery.ajax({ url: uri, type: "POST", data: body, contentLength: body.length, headers: { "accept": "application/json; odata=verbose", "content-type" : "application/json; odata=verbose", "X-HTTP-Method":"MERGE", "IF-MATCH": "*", "X-RequestDigest" : jQuery("#__REQUESTDIGEST").val() } }); query.done(function (data){ console.log('элемент обновлен'); console.log(data) }); query.fail(function (error){console.log('Ошибка при обновлении элемента'); console.log(error)}); return query; }


    15 марта 2016 г. 7:04

Ответы

  • Добрый день,

    вариантов несколько:

    1. Взять из RequestURL

    2. Получить из выделенного элемента списка

    var ctx = SP.ClientContext.get_current();
    var items = SP.ListOperation.Selection.getSelectedItems(ctx);

    3. Есть еще одна переменная:

    _spPageContextInfo.pageListId;   // list guid
    _spPageContextInfo.pageItemId;   // ID for list item
    P.S. А зачем городить jQuery если есть стандартный механизм работы с элементами через JSOM/CSOM?

    15 марта 2016 г. 7:30