2016-11-15 29 views
0

這裏我有形式在HTML輸入值如果點擊按鈕(在Javascript)

<form> 
 
    <input type="text" name ="tes[]" id="tes1"> 
 
    <input type ="submit" value="Periksa Hasil" name="test"> 
 
</form>

按鈕的形式將使用通過在PHP中的數據。這就是爲什麼我讓另一個按鈕設置輸入形式是這樣的值:

<button type="button" onclick="tes_ya(tes1);">Yes</button> 
 
<button type="button" onclick="tes_no(tes1);">No</button>

所以,如果用戶單擊是,表單輸入的值是1,如果用戶單擊否,該值爲0

我已經作出的JavaScript這樣的:

function tes_ya(id){ 
 
\t \t \t document.getElementById(id).value= 1; 
 
\t \t } 
 
function tes_no(id){ 
 
\t \t \t document.getElementById(id).value= 0; 
 
\t \t }

但我不知道,當我嘗試它時,值無法設置。有任何人可以幫助我嗎?謝謝。

回答

4

的按鈕你的點擊處理程序有一個問題:

tes_ya(tes1); 

tes1沒有定義,所以當document.getElementById(id)被調用它,它實質上調用document.getElementById(undefined)(要麼還是原來的代碼會得到一個錯誤,完全失敗)。

你真正想要的是傳遞'tes1'

tes_ya('tes1'); 
+0

OMG,是的!我覺得很愚蠢,我忘了報價。非常感謝。 – Berlian

0

這是更好地避免的onclick

變化:

<button type="button" onclick="tes_ya(tes1);">Yes</button> 

到:

<button type="button" id="yes-btn">Yes</button> 

創建一個將值從按鈕的文本複製功能:

function copyValue() { 
    document.getElementById("tes1").value = this.textContent === "Yes" ? '1' : '0'; 
} 

然後,在JavaScript附加一個像這樣的事件處理程序:

document.getElementById("yes-btn").addEventListener("click", copyValue);