2011-11-13 133 views
0

我想用一個窗體從javascript中的HTML文本框中調用一個變量。
我的HTML看起來像這樣:javascript/html輸入。需要幫助

<script type='javascript'> 
    var X = 5; 
</script> 
<input type='text' name='name'> 
<input type='button' onclick='document.getElementById("output").innerHTML = name.value' value='click'> 
<p id='output'></p> 

的問題是,當你點擊按鈕的段落顯示你鍵入的文本輸入。看來,腳本正在接收name.value的值作爲字符串。我該如何解決這個問題,以便當文本框是X時段落顯示5?

+0

您直接指定'name.value'作爲值,您希望它給你多少'X'?魔法?在你問這裏之前,你看起來沒有任何想法。 –

+0

@ShadowWizard或者你看起來不太好。 'X'是一個值爲「5」的變量。 ANYWAY,我不知道在Javascript中是否有可能從名稱中獲得變量的值。 – RobinJ

+1

@Robinj我認爲'暗影精靈'說因爲這個問題不是很清楚。看起來提問者可能想要X的價值。 – andrewh

回答

0

1)所有「價值」總是會是一個字符串。如果您想將其轉換爲其他東西,則需要手動執行此操作。

2)你沒有傳入X,你傳入「name.value」。在這種情況下,名稱是某種變量(不在你的例子中)。你可能想要得到的輸入字段「名」在這種情況下,你想給你的名字輸入自己的ID(「nameInput」爲例)的值,然後正是如此得到其數值:

document.getElementById('nameInput').value; //(your html would be <input id='nameInput' type='text' etc. etc. /> 

3 )如果你真的要設置的輸入到5的值,你會想嘗試:

document.getElementById("output").innerHTML = X 
+0

如果我使用「document.getElementById(」output「)。innerHTML = X」,那麼不會使用txtbox。我只是想使用txtbox從JavaScript文件調用變量。 –

+0

你的問題不清楚。你究竟在努力完成什麼?它看起來像你試圖從文本框A中獲取值並將其放入文本框B.如果是這種情況,那麼解決方案2就是你需要的(在我的建議中)。在你的代碼中,你把X作爲你的價值,所以,我幫助你理解爲什麼你看到你所看到的,儘管X看起來是任意的和不相關的。 –

1

嘗試更換name.value: window[name.value]

+0

確實,看起來這是OP的真正之後。 –

0

好了,我不認爲有一種方法可以在變量被預置時從變量中獲取值作爲一個字符串出現。似乎這是最簡單的方法:

<input type='text' name='name'> 
<input type='button' onclick='document.getElementById("output").innerHTML = ((name.value == "X") ? ("5") : (name.value))' value='click'> 
<p id='output'></p>