Sto provando a filtrare i miei risultati da un Rest Call.Sottostringa OData di o startswith restituisce tutti gli articoli
$.ajax({
type: "GET",
headers: {
"Accept": "application/json;odata=verbose"
},
dataType: "JSON",
url: _spPageContextInfo.webServerRelativeUrl + "/_api/lists/getByTitle('Contacts')/items?$select=Title,Id&$startswith('Title','" + request.term + "') eq true",
success: function (data) {
},
error: function (ex) {
}
});
nella mia lista di contatti che sto cercando di recuperare il titolo e l'Es articoli che iniziano con una stringa o che contengono la stringa da qualche parte in esso, qui ad esempio è il nome di qualcuno.
Ho anche provato con substringof:
"/_api/lists/getByTitle('Contacts')/items?$select=Title,Id&$substringof(" + request.term + ",'Title') eq true"
che offre anche lo stesso risultato.
Mi fornisce tutte le voci dell'elenco dall'elenco e non viene applicato alcun filtro. costruisco l'URL per il resto dopo aver guardato qui Programming using the SharePoint 2013 REST service Come lo schema dato lì penso che l'URL sembra ok, ma non sembra così :)
Edit:
Applicando la $filter
come nel OData Uri Convenzioni mi dà il seguente errore:
{"error":{"code":"-1, Microsoft.SharePoint.SPException","message":{"lang":"en-US","value":"The query is not valid."}}}
provato con le seguenti stringhe di query:
_api/lists/getByTitle('Contacts')/items?$select=Title,Id&$filter=substringof(m,'Title') eq true
_api/lists/getByTitle('Contacts')/items?$select=Title,Id&$filter=substringof('m','Title') eq true
_api/lists/getByTitle('Contacts')/items?$select=Title,Id&$filter=substringof('m',Title) eq true
vedere la mia modifica. Quando applico il filtro $ mi dà un errore che la query non è in un formato corretto – Mark
Forse è a causa della combinazione/ordine della selezione $, sembra che dovrebbe funzionare. http://sharepoint.mindsharpblogs.com/NancyB/Lists/Posts/Post.aspx?List=b6efd474-248a-4b16-ab88-afdb6fa31b65&ID=25. Puoi provare solo con il filtro? – Rolfvm
Provato solo con il filtro, viene restituito lo stesso errore. C'è probabilmente qualcosa che manca ma non capisco. Quando guardo le convenzioni sembra ok – Mark