2016-12-22 1 views
2

여기에 리디렉션 않습니다 내 현재 코드입니다. 어쨌든, 나는 슬러그를 변경하고 페이지를 새로 고침해야합니다. JS 또는 심지어 jQuery로 어떻게 할 수 있습니까? 그러나이 더 모든 페이지를 다시로드 할 필요 pushState를 사용하여 피함으로써이 문제를 개선 할 수 있음을어떻게 페이지를 JavaScript로 리디렉션 할 수 있습니까? 내가 같은 URL에있을 때 위의</p> <pre><code>window.location.href= '/post/' + data.main_id + '/' + subject + '#post-' + data.post_id; </code></pre> <p>코드 그냥 슬러그를 변경합니다

window.location.href += '#post-' + data.post_id; 
window.location.reload(); 

참고 :

답변

3

먼저 다음 페이지를 다시로드, URL에 조각을 추가하여이 작업을 수행 할 수 있습니다 프래그먼트가 변경되면

+0

를 참조

location.reload(); 

하시기 바랍니다 사용할 수 있습니다 .. upvote에, 감사합니다,하지만 때로는 나도 같은 페이지에 항상 아니에요 .. 가끔 의미 나는 리다이렉트 할 필요가있다. (단지 슬러그를 변경하는 것이 아니다) * .. –

+0

어떤 경우에'reload()'를 할 필요가 없다. window.location.assign ('foo.html # post-12345') ' –

+0

'assign()'을 사용하면 같은 페이지에있을 때 다시로드되지 않습니다 ..! 알다시피, ** 항상 ** ** 항상 동일한 페이지에있을 때와 다른 페이지에있을 때 모두를 의미하는 코드가 필요합니다 ** ** 페이지를 새로 고침하고 슬러그를 변경합니다. –

0
+1

1) URL에서'# '부분을 변경하는 것은 어떻습니까? 2) 참고로 W3Schools를 사용하지 마십시오. 그들이 제공하는 정보는 종종 시대에 뒤 떨어지고 때로는 완전히 부정확합니다. [MDN] (https://developer.mozilla.org/en-US/docs/Web/JavaScript)은 훨씬 더 포괄적이고 신뢰할 수 있습니다. –

+0

pushState()는 window.location.href 대신 URL을 변경하는 데 더 좋은 해결책을 제공합니다. 자세한 내용은 https://developer.mozilla.org/en-US/docs/Web/API/History_API를 참조하십시오. –

관련 문제