我试图将点击按钮的值推送到名为values
的JS数组中。之后,我想检查这个数组的长度,如果它的长度为6,则条件为真。这段代码的问题在于我没有得到警报。
JS
var values = [];
jQuery(document).ready(function($){
$('.ui-btn').click(function() {
values.push($(this).val());
});
});
if (values.length == 6) {
alert("Hello! I am an alert box!!");
}
HTML
<div>
<button name="btn1" type="submit" id="btn1" value="1" class="ui-btn"></button>
<button name="btn2" type="submit" id="btn2" value="2" class="ui-btn"></button>
</div> // I have up to 9 buttons, thats only a piece
答案 0 :(得分:3)
您所要做的就是将if
语句放在click()
jQuery事件处理程序中,如下所示:
$('.ui-btn').click(function() {
values.push($(this).val());
if (values.length == 6) {
alert("Hello! I am an alert box!!");
}
});
请参阅JSFiddle.net上的工作示例。
代码的问题是if
语句只在开头执行一次,以检查数组的长度是否为6.每次都需要运行 单击一个按钮(因此在click
处理程序内)。