2016-11-30 64 views
0

好傢伙,我在這裏是新的... 我如何檢查不同按鈕上的值與相同的ID?如何檢查一些按鈕值相同的id javascript

示例代碼:

<button onclick="checkValue();" id="price" value="1"> 
<button onclick="checkValue();" id="price" value="2"> 
<button onclick="checkValue();" id="price" value="3"> 
<script> 
function checkValue() 
    { 
     var but = document.getElementById("price").value; 
     console.log(but); 
    } 
</script> 

以及..我怎樣才能獲得被點擊它時,1或2或3?

+2

'id'應該是唯一的,使用'類'對於元素組 –

+0

,你不能擁有'相同的ID'。改用'class'。 – ozil

+0

@PranavCBalan嗯,你的意思是我應該把我的類屬性傳遞給我的函數,然後我得到了值? – Wilx

回答

2

id應該是唯一的,因此總是使用class作爲元素組。作爲參數獲取值通過this上下文。

<button onclick="checkValue(this);" value="1">1</button> 
 
<button onclick="checkValue(this);" value="2">2</button> 
 
<button onclick="checkValue(this);" value="3">3</button> 
 
<script> 
 
    function checkValue(ele) { 
 
    console.log(ele.value); 
 
    } 
 
</script>

+1

感謝man:D真的有很大的幫助 – Wilx

+0

@Wilx雖然這個答案確實會告訴你如何得到每個按鈕的值,但這個答案並沒有告訴你如何使用'class'然後'id's'來定位組元素。我想我會指出這一點以備將來參考。 'this'將使用該元素來觸發該事件,顯然'.value'將定位元素use的值以觸發該事件,作爲回報,您將得到單擊按鈕的'value'。我沒有看到發佈答案的很多觀點,所以這裏是一個使用類的例子。 https://jsfiddle.net/dLLavug0/ – NewToJS

+0

@NewToJs:我想問一下事件onclick有什麼不同,然後點擊?我真的不明白,你可以給我解釋一下:D – Wilx

0

你不應該具有相同id多個元素。如果你想他們你可以使用class

獲取所選按鈕的值,您可以發送this在函數內部

function checkValue(elem) { 
 
    console.log(elem.value); 
 
}
<button onclick="checkValue(this)" class="price" value="1">1</button> 
 
<button onclick="checkValue(this)" class="price" value="2">2</button> 
 
<button onclick="checkValue(this)" class="price" value="3">3</button>

0

<button onclick="checkValue(this);" class="price" id="price1" value="1">Button1 
 
<button onclick="checkValue(this);" class="price" id="price2" value="2">Button2 
 
<button onclick="checkValue(this);" class="price" id="price3" value="3">Button3 
 
<script> 
 
function checkValue(d) 
 
    { 
 
     var but = d.value; 
 
     console.log(but); 
 
    } 
 
</script>

相關問題