2010-02-04 4 views
3

Bon, je cherchais cela depuis trop longtemps déjà ... J'essaie de trouver comment je peux retourner le nom de fichier de la page qui exécute un javascript inclus, de l'intérieur de ce javascript.Obtenir le script en cours d'exécution de nom de fichier en javascript

Je peux facilement le faire en PHP en utilisant $_SERVER['SCRIPT_FILENAME'], mais en Javascript, cela semble être beaucoup plus difficile.

Ai-je vraiment besoin de sous-traiter location.href ou y at-il un moyen plus efficace? Est-ce que jQuery pourrait vous aider?

+0

La solution 'de location.href' suppose que votre nom de fichier est exposé dans l'URL. Cela ne fonctionnera pas si votre URL est réécrite - voir l'URL de cette question. –

+0

Hmmm, c'est une note importante à tenir en compte - merci Nikki. Connaissez-vous une solution alternative pour résoudre ce problème? Je l'utilise dans une fonction jQuery AJAX, donc la solution PHP n'est pas une option ici, j'en ai peur. –

+0

Il y a d'autres possibilités pour accéder au nom de fichier, la question est - qu'est-ce que vous essayez de faire, pour quoi avez-vous besoin du nom de fichier? – chiborg

Répondre

2

Retirez les paramètres Url

function getFileName() 
{ 
    var url = window.location.pathname; 
    var lastUri = url.substring(url.lastIndexOf('/')+1); 
    if(lastUri.indexOf('?')!= -1) 
    return lastUri.substring(0,lastUri.indexOf('?')); 
    else 
    return lastUri; 
} 
2
var url=location.href; 
return url.substring(url.lastIndexOf('/')+1) 
Questions connexes