Eu tenho um URL como http://localhost/dms/mduserSecurity/UIL/index.php?menu=true&submenu=true&pcode=1235
.
Eu quero começar a URL sem a string de consulta: http://localhost/dms/mduserSecurity/UIL/index.php
.
Existe algum método para isso em JavaScript? Atualmente estou usando document.location.href
, mas ele retorna a URL completa.
javascript
url
santo
fonte
fonte
Respostas:
Tente o seguinte:
window.location.href.split('?')[0]
fonte
#
termo em stackoverflow.com/questions/5817505#5817548 ). Você precisaria usar regex ou usar várias funções .split (); nesse momento, perdeu o valor de ser uma resposta "simples" ao limpar um URL. Concedido que isso está tecnicamente além do escopo da pergunta, mas eu diria que ainda é relevante.Leia sobre
Window.location
e aLocation
interface:fonte
${location.protocol}//${location.host}${location.pathname}
pathname
pode cair a liderança/
(até o IE 11?) . Ah, ou seja, sempre um floco de neve, não é?fonte
location.href.replace(location.search, '')
fonte
Se você também deseja remover o hash, tente este:
window.location.href.split(/[?#]/)[0]
fonte
Experimentar:
(Nota: em
.host
vez de.hostname
incluir também a porta, se necessário)fonte
Aqui está uma abordagem usando a interface URL () :
fonte
basta cortar a corda usando split (da maneira mais fácil):
fonte
Para obter todas as partes da URL, exceto a consulta:
Observe que isso inclui também o hash, se houver um (sei que não há hash no URL de exemplo, mas incluí esse aspecto para fins de integridade). Para eliminar o hash, basta excluir
.concat(location.hash)
.É uma prática recomendada usar
concat
a junção de cadeias Javascript (em vez de+
): em algumas situações, evita problemas como confusão de tipo.fonte
Use propriedades de
window.location
Você pode ver mais propriedades em https://developer.mozilla.org/en/DOM/window.location
fonte
Aqui estão dois métodos:
fonte
Que tal agora:
location.href.slice(0, - ((location.search + location.hash).length))
fonte
Basta adicionar essas duas linhas a $ (document) .ready no JS da seguinte maneira:
é melhor usar o cifrão ($) (terminar com)
em vez de (^) (Comece com)
porque, se você usar o sinal (^) e tiver URLs aninhados no menu de navegação (por exemplo, "/ conta" e "/ conta / funções")
Ele ativará os dois.
fonte
Se você usa o dot net core 3.1, ele suporta o caso de ignorar rota, portanto, a maneira anterior não será útil se a rota estiver em letras minúsculas e o usuário gravar a rota em letras maiúsculas.
Portanto, o código a seguir é muito útil:
fonte