GetListItems Webservice ignore mon filtre de requête
Le code ci-dessous apparemment exécute le service web et renvoie des valeurs, mais ignore la clause where (donc le retour de tous les articles dans la liste). C'est la forme la plus simple du problème que j'ai trouvé.
La TestQuery liste est une simple liste personnalisée avec pas de champs définis par l'utilisateur. Quelqu'un peut voir pourquoi le filtre ne fonctionne pas?
<body>
<script type="text/javascript" src="http://jqueryjs.googlecode.com/files/jquery-1.3.2.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
var soapEnv = "<soapenv:Envelope xmlns:soapenv='http://schemas.xmlsoap.org/soap/envelope/'><soapenv:Body><GetListItems xmlns='http://schemas.microsoft.com/sharepoint/soap/'>";
soapEnv += "<listName>TestQuery</listName>";
soapEnv += "<Query><Where><Eq><FieldRef Name='Title'/><Value Type='Text'>One</Value></Eq></Where></Query>";
soapEnv += "<ViewFields><ViewFields><FieldRef Name='Title'/></ViewFields></ViewFields><RowLimit>1</RowLimit>";
soapEnv += "</GetListItems></soapenv:Body></soapenv:Envelope>";
$.ajax({
url: "_vti_bin/lists.asmx",
type: "POST",
dataType: "xml",
data: soapEnv,
complete: processResult,
contentType: "text/xml; charset=\"utf-8\""
});
});
function processResult(xData, status) {
$('#WSResponse').text(status);
$(xData.responseXML).find("z\\:row").each(function() {
var liHtml = "<li>" + $(this).attr("ows_Title") + "</li>";
$("#tasksUL").append(liHtml);
});
//}
}
</script>
<ul id="tasksUL"/>
<div id="WSResponse"/>
</body>
OriginalL'auteur stuckagain | 2009-05-07
Vous devez vous connecter pour publier un commentaire.
Il vous manque un <query>. La mise en forme de ces paramètres est un peu contre-intuitif.
Il y a un post sur mon blog avec un exemple:
http://tqcblog.com/2007/09/24/sharepoint-blog-content-rating-with-javascript-and-web-services
OriginalL'auteur Tom Clarkson
Je pense que vous avez besoin de mettre la Requête balise à l'intérieur d'une requête et la balise de la ViewField à l'intérieur d'un viewField tag donc quelque chose comme:
OriginalL'auteur Temple
J'avais aussi été confronté au même problème .. "Temple de la solution ont résolu la requête problème.. mais pour faire de l'RowLimit de travail, j'ai fait le" R "" i " minuscule.e,
Ce attrapé tout à fait une quantité de temps à moi... 🙂 amusez-vous bien...
OriginalL'auteur Jaanesh