2011-02-09 2 views
0

J'utilise ActiveXObjects pour éditer des documents par WebDav en utilisant un service en ligne selon:Comment ouvrir des documents contenant certains caractères via WebDav?

function openWithWebDAVCallback(data, xmlObj) 
{ 
    var document = new ActiveXObject("SharePoint.OpenDocuments.2"); 
    var documentPath = xmlObj.getElementsByTagName('davUrl')[0].firstChild.nodeValue; 
    document.EditDocument(documentPath); 
} 

Cependant parfois documentPath contiendra un signe dièse (#) qui se traduit par EditDocument plantage et ne permettant pas l'accès au document. J'ai essayé de remplacer le signe de numéro avec "& # 3 5 ;" sans succès.

Comment autoriser l'utilisation de caractères spéciaux comme #,?, = Etc. dans les noms de document tout en permettant à l'utilisateur d'y accéder via WebDav?

Répondre

2

Un # signifie "Démarrer l'identificateur de fragment" dans une URL.

Vous devez l'encoder pour les URL, pas pour le HTML.

En JavaScript: encodeURIComponent

Questions connexes