将参数传递给传单easybutton的onClick函数

时间:2019-04-24 07:36:14

标签: javascript leaflet

我正在使用传单easybutton,当我通过forloop创建一些按钮并且希望将clicked按钮的ID传递给onClick函数时

var Filetime = [0, 3, 6, 9, 12, 15, 18, 21]
  for (i = 0; i < Filetime.length; i++) {
    var mybutton = L.easyButton({
      id:String(Filetime[i]),
      states:[{
        icon:'<strong>'+String(Filetime[i])+'</strong>',
        onClick: function(e){
          alert(id)
        }]
    })

我希望输出是我按钮的ID,但是我没有定义错误ID

1 个答案:

答案 0 :(得分:0)

id的确没有定义。以下内容可能会有所帮助:


var Filetime = [0, 3, 6, 9, 12, 15, 18, 21]
for (var i = 0; i < Filetime.length; i++) {
    (function () {
        var id = String(Filetime[i])
        L.easyButton({
            id: id,
            states: [
                {
                    icon: '<strong>' + id + '</strong>',
                    onClick: function (e) {
                        alert(id);
                    }
                }
            ]
        });
    })();
}