2017-10-28 176 views
0

有人可以讓我知道是否可以在「setAttribute」中傳遞一個變量來使輸入值出現在href鏈接中?在Set屬性值中傳遞一個變量

比如我有:

var inputNumber = document.getElementById('inputNumber').value; 
var validateBtn = document.getElementsByTagName("a"); //a surrounding n button 
var linkValidation = validateBtn[0].href = ("https://checkyournumber.com.action?inputNumber=" + inputNumber); 

到目前爲止好,如果我CONSOLE.LOG linkValidation,我確實有與輸入數字的完整鏈接在年底的預期。 然而,當我嘗試使用下面的href屬性設置爲一個標籤在html:

document.getElementsByTagName("a")[0].setAttribute("href", "https://checkyournumber.com.action?inputNumber=" + inputNumber); 

然後,用戶被引導到的鏈接是:https://checkyournumber.com.action?inputNumber=

我試圖進入inputNumber內「」,但當然它顯示在URL中。我嘗試過'',相反...沒有運氣。

會有人知道它是否有可能嗎?

非常感謝您的支持!

+1

最有可能的問題是,當這個代碼'變種inputNumber =的document.getElementById( 'inputNumber')值;在執行所述''#inputNumber'元件是空的。 – Titus

+0

好的。因此,使用此分配href應該在技術上有效: document.getElementsByTagName(「a」)[0] .setAttribute(「href」,「https://checkyournumber.com.action?inputNumber =」+ inputNumber); ? –

+0

是的,它應該......提供一個[mcve]來重現你的問題 – charlietfl

回答

0

嘗試如下

(function() { 


    var inputNumber = document.getElementById('inputNumber').value; 
    var validateBtn = document.getElementsByTagName("a"); //a surrounding n button 
    var linkValidation = validateBtn[0].href = ("https://checkyournumber.com.action?inputNumber=" + inputNumber); 


});