2017-10-29 49 views
0

爲什麼我可以用#獲得一個id值,但不能獲得類值。 例如: $(button#${value}).VAL() - >工作獲得一個類的價值

$(button.${value}).VAL() - >不起作用。

+3

按鈕元素沒有值。 – trincot

回答

0

JQ選擇器從DOM中選擇一個對象,並試圖獲取該對象的值。在這種情況下,您選擇了一個沒有值的對象。

+0

但這不會因爲我的情況。我有一個價值,因爲它與ID一起工作,但是當我將它更改爲類時,它不會運行。 –

+0

在這種情況下,這可能意味着JQ正在返回一個數組而不是單個值,因爲它必須期望具有相同類的多個元素的可能性。 – TecBrat

1

當您的button元素沒有value屬性時,val()將返回空字符串。

但是,如果你把一個value屬性您button元素它的工作原理,因爲這個片段演示:

var valueA = "a", valueB = "b"; 
 
console.log($(`button#${valueA}`).val()); 
 
console.log($(`button.${valueB}`).val());
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<button id="a" class="b" value="hello">click</button>

或者,如果你就拿按鈕的文本(.text())那麼它也可以工作:

var valueA = "a", valueB = "b"; 
 
console.log($(`button#${valueA}`).text()); 
 
console.log($(`button.${valueB}`).text());
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<button id="a" class="b" value="hello">click</button>

+0

*「按鈕元素沒有值屬性」*。我很困惑,你確定嗎? MDN說不然:https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button –

+0

恩,我不得不好好看看這個。我給它一個鏡頭,看看它是如何運行的。 –

+0

與此同時,我不希望它打印到頁面。那是什麼.text()呢?我在製作紙牌遊戲,所以我必須知道用戶何時匹配相同的值。 –