如何将单击的div的类名作为参数传递给函数

时间:2014-09-14 15:21:40

标签: javascript html function class parameters

这可能是基本但我无法从JAVASCRIPT中找到我所做的研究所需的结果。

有两个数字变量。它们是“mainnumber”和“buttonnumber” mainnumber是从math.random生成的。 buttonnumber是不同类名末尾的数字。 这意味着当被点击的div具有类名class ='example1'时,buttonnumber = 1 这意味着当被点击的div具有类名class ='example2'等等时,buttonnumber = 2。

大约有50个div拥有自己的类名,例如example1,example2等。一些类名在div之间重复。

当单击一个按钮时,调用一个函数“compareaction”来比较“mainnumber”和“buttonnumber”并执行一个不同的函数 “resultcorrect”或“resultwrong”取决于比较。

//比较代码

function compareaction(buttonnumber){
    if (mainnumber == buttonnumber){
        resultcorrect();    
    } else {
        resultwrong();
    }
}

我需要知道如何将类名末尾的数字(即1或2或3或4等)传递给函数。

<div class="example1" onclick="compareaction(\\number in class name as a parameter)"></div>

1 个答案:

答案 0 :(得分:3)

将类名传递给函数

<div class="example1" onclick="compareaction(this.className)">

然后在函数

中检查它
function compareaction(className) {
    // className will be 'example1' in this case
    var buttonNumber = className.match(/\d+$/)[0];
    if (mainnumber == buttonNumber){
        resultcorrect();    
    } else {
        resultwrong();
    }
}