2009-03-23 8 views
1

J'essaye d'implémenter autocodeplete dans un webpart personnalisé dans sharepoint 2007. Quand j'utilise un fichier statique dans le même domaine (pour la zone de texte avec l'id f1) tout fonctionne bien mais quand je utilisez une URL distante qui donne une sortie json (pour la zone de texte avec l'ID f2), elle donne une erreur Autorisation refusée en javascript. Dans la dernière page suivante est le code HTML généré -Utilisation JQuery autocomplete et externe JSON url dans sharepoint 2007

$('#f1').autocomplete('documents/staticfile.txt'); 
$('#f2').autocomplete('http://url_that_spits_out_json', 
{ dataType:"json", 
    formatItem: function(data,i,max,value,term){ return value; }, 
    parse: function(data) { 
    var array = new Array(); 
    for(var i=0;i<data.length;i++) { 
     array[array.length] = { data:data[i], value: data[i].text, result: data[i].text}; 
    } 
    return array; 
    } 
}); 

Depuis son travail bien pour f1, pour moi, il ressemble à quelque chose à voir avec sharepoint. Quelqu'un a une idée, comment faire cela?

Répondre

1

Si vous recevez une erreur d'autorisation refusée, c'est probablement parce que vous recevez vos données JSON d'un autre domaine. Vous devrez soit utiliser JSONP ou conserver les données sur le même nom de domaine.

Voir l'option .ajax $ pour dataType: JSONP

+0

http://code.google.com/p/jquery-jsonp/ rend encore plus facile :) –