我有一個表單元素,我想在單擊事件中切換1和0之間的值。jQuery - el.val(!e.val())返回false
我知道我可以存儲此值並對其進行測試,以確定該字段的新值。
雖然我的問題是,爲什麼下面的工作沒有?
$('#myEl').val(!$('#myEl').val());
我有一個表單元素,我想在單擊事件中切換1和0之間的值。jQuery - el.val(!e.val())返回false
我知道我可以存儲此值並對其進行測試,以確定該字段的新值。
雖然我的問題是,爲什麼下面的工作沒有?
$('#myEl').val(!$('#myEl').val());
val()
返回一個字符串,!
返回一個布爾值,它被轉換爲字符串(由val(...)
)變成「false」。
相反轉換的串號和布爾值數,使用一元+
兩次:
$("#toggle").click(function() {
$('#myEl').val(+!+$('#myEl').val());
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input id="myEl" value="1">
<button id="toggle">Toggle</button>
因爲#myEl有一個值,通過做$('#myEl').val(!$('#myEl').val());
您將#myEl設置爲false。
你能張貼代碼的休息嗎? – BravoZulu