2010-12-07 4 views
3

Modifier cette ...Décoller tout après #ancre y compris le #ancre

www.sample.com/sample.html#commentxxx?stuffhereIdontneed 

dans ce ...

www.sample.com/sample.html 

Je l'ai dans un lien, donc je pense que je besoin d'un regex ?

document.write("<a href='"+ window.location.href.replace('?????', '') + 
"?ThisIsAppendedLater'>sample</a>"); 

Répondre

13

La réponse de Nathan est bon. Par souci d'exhaustivité voici la regex:

var stripped = window.location.href.replace(/#.*$/,''); 
+1

Cela fonctionne fantastique – gravityboy

7

window.location.hash = '';

+0

ce bat la balise 'regex', mais il est tellement plus agréable! Est-ce portable? – xtofl

+0

Oui. Fonctionne dans tous les navigateurs. –

+0

J'en avais besoin dans un lien (j'ai édité) mais peut-être que c'est mieux votre façon de le retirer en premier? – gravityboy

1

url.substring (0, url.indexOf ("#"))

+0

+1. C'est ce que je voudrais utiliser si je voulais juste récupérer l'URL (ne pas le modifier). –

0

Si vous voulez une solution à base de regex, vous pouvez utiliser:

window.location.href.replace('#.*', '');