使用单个方法检测按钮数组的单击

时间:2015-02-21 21:37:06

标签: arrays methods jbutton actionlistener

我在一个学校项目中工作,一个扫雷。将是20x20,所以它有400个按钮。它有一种方法可以添加一个actionEvent / actionPerformed并为整个数组实现一个通用方法吗?还是有一种更简单的方法?

2 个答案:

答案 0 :(得分:0)

您将按钮放在容器内(我想)。添加动作处理程序以捕获单击。并阅读'目标'事件的变量,看看是否是一个按钮

答案 1 :(得分:0)

也许是这样的(为方便起见使用jQuery,但你也可以使用Vanilla JS):

您的HTML:

<div id="buttonsHolder">
    <button data-num=1>1</button>
    <button data-num=2>2</button>
    <button data-num=3>3</button>
    ...
    <button data-num=4>4</button>
</div>

您的JavaScript:

$('#buttonsHolder').on('click', 'button', (function(evt){
    var buttonNum = $(this).attr('data-num');
    // Now, buttonNum variable holds the button number has clicked.
});

当然,您可以使用所需的任何数据,而不是使用data-num属性。