Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何检查是否在函数onClick中单击了按钮?_Javascript - Fatal编程技术网

Javascript 如何检查是否在函数onClick中单击了按钮?

Javascript 如何检查是否在函数onClick中单击了按钮?,javascript,Javascript,我有一个标记,当单击该标记时,会出现一个模型。在该模型内,我有3个按钮,具有3种不同的功能。在函数onClick(标记)中,我不想检查模型中哪个树按钮被单击。类似于 if(('#button').isclicked == true) { aceite(); } 需要注意的是,我的按钮是隐藏的,它们是由另一个使用append的函数添加的 变量: var aceite = document.getElementById("aceite"); var recusado = d

我有一个标记,当单击该标记时,会出现一个模型。在该模型内,我有3个按钮,具有3种不同的功能。在函数onClick(标记)中,我不想检查模型中哪个树按钮被单击。类似于

if(('#button').isclicked == true)
 {
     aceite();
 }
需要注意的是,我的按钮是隐藏的,它们是由另一个使用append的函数添加的

变量:

  var aceite = document.getElementById("aceite");
   var recusado = document.getElementById("recusado");
   var concluido = document.getElementById("concluido");
以下是添加按钮的功能:

function getData(id) {

    $.get(`/api/IgnicoesAPI/${id}`, function (data) {

        //o div terá que ser limpo para que a informação não seja subreposta
        document.getElementById("myDiv").innerHTML = "";
        document.getElementById("buttons").innerHTML = "";

        //Indicação do id e do estado da ignição clicada 
        $('#myDiv').append('<h3><b>Avaliação da Ignição</b></h3>');
        $('#myDiv').append('<p>Estado:' + data.estado + '</p>')
        $('#myDiv').append('<p>ID: ' + id + '</p>');

        $.each(data.listaOcorrencias, function (o, ocorrencia) {
            //é adicionado as imagens correspondente a cada ocorrencia pertecentes á ignição clicada
            $('#myDiv').append('<img src="imagensFogos/' + ocorrencia.fotografia + '" onclick="openModal();" class="hover-shadow" style="width:200px; height:190px" hspace="4"/>');

        });

        //adição dos botões que alteram o estado da ignição
        $('#buttons').append('<button id="aceite" style="background-color:#4CAF50;border: none;color: white;padding: 5px 12px;text-align: center;display: inline-block;font-size: 16px; box-shadow: 0 8px 16px 0 rgba(0,0,0,0.2), 0 6px 20px 0 rgba(0,0,0,0.19); margin:5px;">Aceitar</button>');
        $('#buttons').append('<button id="recusado" style="background-color:#f44336;border: none;color: white;padding: 5px 12px;text-align: center;display: inline-block;font-size: 16px; box-shadow: 0 8px 16px 0 rgba(0,0,0,0.2), 0 6px 20px 0 rgba(0,0,0,0.19);margin:5px;">Recusar</button>');
        $('#buttons').append('<button id="concluido"  style="background-color:#008CBA;border: none;color: white;padding: 5px 12px;text-align: center;display: inline-block;font-size: 16px; box-shadow: 0 8px 16px 0 rgba(0,0,0,0.2), 0 6px 20px 0 rgba(0,0,0,0.19);margin:5px;" > Concluído</button>');

    });
}

您可以在单击按钮元素时向其添加数据属性,然后检查哪些按钮具有这些属性

$(按钮)。单击(函数(){
$(this).attr(“单击数据”,true)
})
您可能希望在创建按钮时向按钮添加特定类,以使用上面的选择器将其作为目标,或者可以使用
createElement
生成按钮,并使用
addEventListener
添加事件

然后,只需找到具有该属性的按钮即可将jquery中所有单击的按钮作为目标:
$(“按钮[单击的数据]”)


或者,要检查是否单击了按钮,可以使用
buttonElement.hasAttribute(“单击的数据”)

显示为aceite按钮添加单击处理程序的位置。e、 g:查看类似以下内容的代码:
$('#aceite')。单击(function(){aceite.isclicked=true;})
(或者您没有,这就是问题所在)。您可以使用此方法。谢谢@UmairKhan,这正是我所需要的。
          $.get("/api/IgnicoesAPI", function (data) {



        console.log(data);
        $.each(data, function (i, item) {

        //More Code

        var marker = new L.marker([item.latitude, item.longitude], { icon: ignicao })

            .on('click', function onClick(e) {

                var id = item.id;

                clickedmarker = e.target;

                 if(aceite.isclicked == true)
                 {
                     //calls function
                 }
                  //Same for the other two buttons

              modal.style.display = "block";

                getData(id);
            }).addTo(map);







            //adiciona marador ao mapa
            $('#json map').append(marker);
        });// fim each
    });//fim do get