[英]Pass a url return from JS function into href
我還是JS和HTML5的新手
所以我有一個URL,我存儲在var中
var Base_URL = "https://www.mywebsite.com/info?username";
鏈接到有權訪問可以包含空格的用戶名值的數據庫。
我將此網址解析為一個函數
function removeSpaceURL(url) {
var update = url.split(' ').join('%20');
return update;
}
這不是我所知道的最好方法,但足以達到目的。
卡住的地方是我想將更新返回到href引用中,以便單擊它。
<p><a href="" onclick="removeSpaceURL(BASE_URL);return false;" >Survey</a></p>
<script>
var Base_URL = "https://www.mywebsite.com/info?username";
function removeSpaceURL(url) {
var update = url.split(' ').join('%20');
return update;}
</script>
當我在JSfiddle上嘗試時,出現以下錯誤:
{“錯誤”:“請使用POST請求”}
正確的做法是首先將Base_URL
設置為格式正確的URL,如果用戶名部分中沒有空格,則不是這樣。
但是假設您堅持使用它,那么在元素上設置屬性非常簡單:
<p><a id="target-link" href="">Survey</a></p>
<script>
var Base_URL = "https://www.mywebsite.com/info?username";
document.getElementById("target-link").setAttribute(
"href", encodeURI(Base_URL)
);
</script>
請注意,使用emiliopedrollo 建議的encodeURI
,而不是簡單地替換空格。 話雖如此,如果URI的部分已經被正確編碼,只有用戶名的問題, encodeURI
可能會增加一倍編碼的東西。 因此,如果您只想替換空格:
document.getElementById("target-link").setAttribute(
"href", Base_URL.replace(/ /g, "%20");
);
還要注意, return false
從onclick
一個上a
元素會阻止跟着鏈接,所以我離開了onclick
完全。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.