我有一個JavaScript變量:允許用戶更改與一個按鈕一個JavaScript變量單擊
var setClickTime = "2000";
我想通過點擊一個按鈕,爲用戶提供2000或4000的基礎上自己的喜好選擇。
允許用戶更改此變量的最佳方法是什麼?我曾考慮過有兩個按鈕,其中一個會在點擊時激活課程。這將需要我設置一個if/else語句來根據哪個按鈕處於活動狀態來更改變量。但我對這一點很陌生,我不知道最好的方法。
我有一個JavaScript變量:允許用戶更改與一個按鈕一個JavaScript變量單擊
var setClickTime = "2000";
我想通過點擊一個按鈕,爲用戶提供2000或4000的基礎上自己的喜好選擇。
允許用戶更改此變量的最佳方法是什麼?我曾考慮過有兩個按鈕,其中一個會在點擊時激活課程。這將需要我設置一個if/else語句來根據哪個按鈕處於活動狀態來更改變量。但我對這一點很陌生,我不知道最好的方法。
只要給你的按鈕ID和綁定的聽衆。
說,你有兩個按鈕id="setTime2000"
和id="setTime4000"
,那麼你只需要:
HTML代碼:
<div>
<button id="setTime2000">Set time as 2000</button>
<button id="setTime4000">Set time as 4000</button>
</div>
JS代碼:
$(document).ready() {
var mTime = 2000; // set the default value of time
$("#setTime2000").click(function() {
mTime = 2000;
}
$("#setTime4000").click(function() {
mTime = 4000;
}
// ... do something with the variable set
}
Ares Ou這是一個非常好的答案。謝謝你的例子。 –
你只是想要一個按鈕事件監聽器來改變它:
<button id="changeBtn">4000</button>
JS
var setClickTime = "2000";
$("#changeBtn").click(function() {
setClickTime = "4000";
})
我很喜歡此答案Cory。非常簡單可靠。我沒有想到這樣做。 –
首先,你有一個JavaScript變量,它無關的jQuery。
然後,如果你想要簡單的東西,沒有依賴關係。這裏一個簡單的例子:
var myValue = 2000;
updateOutput();
a.addEventListener('click', function() {
myValue = 2000;
updateOutput()
});
b.addEventListener('click', function() {
myValue = 4000;
updateOutput()
});
function updateOutput() {
output.value = myValue;
}
<button id="a">2000</button>
<button id="b">4000</button>
<input readonly id="output">
你不需要2個事件。 $('button')。click(function(){myValue = $(this).text();});將是更直接和更好的方式。 – DinoMyte
爲什麼你應該依靠jQuery來完成這麼簡單的任務?順便說一下,jQuery在內部也創建了兩個事件監聽器。 –
純JavaScript中的通用的答案。
<button class='setTime'>
2000
</button>
<button class='setTime'>
4000
</button>
純JavaScript:
var setClickTime = "";
var buttons = document.getElementsByClassName('setTime')
for (i = 0; i < buttons.length; i++) {
this.onclick = function setTime(event) {
setClickTime = event.target.innerHTML;
alert(setClickTime);
}
}
可以定義多個radio
buttons
爲更多的選擇(具有相同名稱的屬性將它們分組),然後就delegate
或bind
一個change
該組radios
buttons
的事件以獲得選定的值。
<input type="radio" name="test" value="2000">2000
<input type="radio" name="test" value="4000">4000
<script>
var setClickTime;
$('input:radio[name=test]').on('change',function()
{
setClickTime = this.value;
});
</script>
你應該聽取更改事件,而不是點擊 –
是。這會更有意義。 – DinoMyte
首先使它工作,那麼如果這樣做,或沒有,你將有更多的信息來決定是否你的選擇是好的。 – Niloct
下拉列表,兩個按鈕,單選按鈕,標籤單擊,不管 – Shockwave
如果用戶要在點擊過程中選擇一個值並截取所選選項,則應該使用單選按鈕。 – DinoMyte