Lire une Liste SharePoint et placer les données sur un fichier HTML par l'intermédiaire de la fonction JavaScript
J'ai une URL SharePoint, qui est juste une liste SharePoint avec des colonnes et lignes de données.
J'aime lire des informations à partir de cette URL spécifique et de mettre les données sur un fichier HTML via une fonction JavaScript.
Je n'ai pas d'expérience à propos de JavaScript & HTML5 et donc, je ne suis pas sûr de savoir comment l'appel à ces fonctions afin de récupérer les données.
C'est ce que j'ai jusqu'à présent et il ne fonctionne pas du tout:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title></title>
<meta name="description" content="">
<meta name="viewport" content="width=device-width">
</head>
<script type="text/javascript" src="filelink/jquery-1.6.1.min.js"></script>
<script type="text/javascript" src="filelink/jquery.SPServices-0.6.2.min.js"></script>
<script language="javascript" type="text/javascript">
$(document).ready(function() {
$().SPServices({
operation: "GetListItems",
webURL: "http://myURL.aspx",
async: false,
listName: "Announcements",
CAMLViewFields: "<ViewFields><FieldRef Name='Title' /></ViewFields>",
completefunc: function (xData, Status) {
$(xData.responseXML).SPFilterNode("z:row").each(function() {
var liHtml = "<li>" + $(this).attr("ows_Title") + "</li>";
$("#tasksUL").append(liHtml);
});
}
});
});
</script>
<ul id="tasksUL"/>
<body>
</body>
</html>
Si j'essaie d'ouvrir le index.html rien ne se passe, donc je ne sais pas comment appeler mes fonctions sur mon fichier HTML. Aussi, je ne sais pas comment le définir SP.ClientContext dans le fichier HTML.
Merci beaucoup à l'avance.
- Je l'obtenir à partir de: msdn.microsoft.com/en-us/library/hh185009.aspx
ok, voir ma réponse. Aussi, que voulez-vous dire par "rien ne se passe"? Ne vous obtenez une page blanche?
OriginalL'auteur Codelel | 2012-11-20
Vous devez vous connecter pour publier un commentaire.
La SPServices bibliothèque le fera pour vous très facilement.
Vous aurez envie d'utiliser cette appel. J'ai l'habitude de l'encapsuler dans ma propre fonction pour rendre le code plus joli, surtout si je suis en train de faire beaucoup de AJAX liste des requêtes.
En gros ce qui va arriver SharePoint sera de retour une vilaine document XML qui a toutes vos éléments de liste tel que défini par la La Documentation De Microsoft. Vous pourrez parcourir ce document à l'aide de SPServices comme ceci:
Ligne par ligne:
<script type="text/javascript" src="filelink/jquery-1.6.1.min.js"></script>
JQuery est requis par SPServices
<script type="text/javascript" src="filelink/jquery.SPServices-0.6.2.min.js"></script>
Y Compris SPServices
$(document).ready(function() {
"Lorsque le DOM est chargé, de l'exécution de cette fonction"
$().SPServices({
"C'est un SPServices fonction"
operation: "GetListItems",
"Nous sommes à l'aide de la "GetListItems" web service"
async: false,
"Pas asynchrone, c'est maintenant"
listName: "Announcements",
"Nous sommes en utilisant la liste des Annonces
CAMLViewFields: "<ViewFields><FieldRef Name='Title' /></ViewFields>",
Ne vous inquiétez pas au sujet de cette ligne
completefunc: function (xData, Status) {
"D'exécuter cette fonction lorsque la demande est complète. Les données sont transmises en tant que xData, l'état d'achèvement est passé en Statut"
$(xData.responseXML).SPFilterNode("z:row").each(function() {
"Prendre de la chaîne de réponse et de ne prendre la "ligne" des nœuds XML. Pour chacun de ces nœuds, d'exécuter cette fonction..."
var liHtml = "<li>" + $(this).attr("ows_Title") + "</li>";
"Créer une variable appelée liHtml égale à une balise li et l'attribut XML ows_Title"
$("#tasksUL").append(liHtml);
"Ajouter cet élément de la liste à l'élément dont l'ID est 'tasksUL'"
Après avoir pris un coup d'oeil à la documentation, j'ai dû ajouter un autre "argument" à cet appel qui est à peu près: webURL: "MyURL.aspx". Après cela, une fois que j'ai ouvert mon index.html rien ne se passe, donc on dirait que je suis absent quelque chose ici. J'ai modifié ma première entrée à modifier la index.html fichier
Je suis désolé mais je n'ai pas que de liste SharePoint donc je ne peut pas fournir l'URL sans les autorisations. Je comprends que vous aider peut être limitée à ce sujet, mais malheureusement, il n'est pas sous mes mains. Même si, merci beaucoup pour tout
Ah, alors c'est probablement un problème d'authentification. Vous devrez peut-être faire quelque chose comme ceci avant de vous connecter. Assurez-vous juste que webURL vers le domaine de l'SharePoint server sinon, le client n'aura pas un contexte.
J'ai essayé de mettre les informations d'identification: $(document).ready(function() { $().SPServices({ opération: "Connexion", webURL: "myURL.aspx", nom d'utilisateur: "domaine\\nom d'utilisateur" mot de passe: "monmotdepasse" opération: "GetListItems", malheureusement ne fonctionne toujours pas
OriginalL'auteur jpumford
Il y a un certain nombre de problèmes avec votre code.
Tout d'abord, il ne fonctionne que dans une page SharePoint, pas de manière autonome, vous êtes à l'aide de SharePoint fonctions comme la SP.ClientContext.
Deuxième, il semble y avoir des erreurs dans le code. Par exemple, je pense que
this.collList
devrait en fait êtrevar collList
.Peut-être essayer cette autre référence (mais encore une fois ça ne marchera que dans un SharePoint 2010 ou 2013 page):
http://msdn.microsoft.com/en-us/library/hh185007(v=office.14).aspx
OriginalL'auteur Christophe
En fait le code que vous utilisez pour la SPServices bibliothèque écrite par Sympmarc et là, dans sa documentation, ses mentionner que c'est pour être utilisé à l'intérieur des pages en cours d'exécution sur SharePoint Contexte pour faire des appels, il utilise __REQUESTDIGEST variable post et cela ne sera pas disponible sur normal HTML5 pages, les options que je puis vous donner sont les suivants:-
1) Activer l'Authentification Http de Base sur le Site SharePoint, puis utiliser $fonction ajax de jquery avec Basic Auth les informations d'identification de votre appel au service.
2)Créer un gestionnaire http avec code pour faire votre travail, puis passer json à partir de jquery pour importer des données à partir de ce gestionnaire.
OriginalL'auteur Ankur Madaan