Javascript 如何在单击图像时从数组中检索图像详细信息

Javascript 如何在单击图像时从数组中检索图像详细信息,javascript,jquery,arrays,ajax,list,Javascript,Jquery,Arrays,Ajax,List,我一直在编写一个图像标记代码,将图像的标记保存到数据库中。 因此,我在代码中所做的是,登录系统的用户将首先在图像上绘制一个框以进行标记。然后单击确认。单击“确认”按钮后,边界框位置和图像名称将存储在数据库中。您可以在图像中看到标记屏幕的图像 除了将值存储在数据库中,我还将这些标记位置值推送到数组中。我想做的是在再次单击图像时再次从数组列表中获取值 下面是我用来使用ajax发布值的代码: $('.confirm').click(function(){ var areas = $

我一直在编写一个图像标记代码,将图像的标记保存到数据库中。 因此,我在代码中所做的是,登录系统的用户将首先在图像上绘制一个框以进行标记。然后单击确认。单击“确认”按钮后,边界框位置和图像名称将存储在数据库中。您可以在图像中看到标记屏幕的图像

除了将值存储在数据库中,我还将这些标记位置值推送到数组中。我想做的是在再次单击图像时再次从数组列表中获取值

下面是我用来使用ajax发布值的代码:

  $('.confirm').click(function(){
        var areas = $('img#img01').selectAreas('areas');
        displayAreas(areas);

        var imgarray=[];

        var x_value= document.getElementById('x').value;
        var y_value= document.getElementById('y').value;
        var w_value= document.getElementById('w').value;
        var h_value= document.getElementById('h').value;
        var fullPath = document.getElementById("img01").src;
        var filename = fullPath.replace(/^.*[\\\/]/, '');
  

        document.getElementById("result").value = filename;

        var img_name= document.getElementById('result').value;
       
  imgarray.push({"img_name":img_name.value,"x":x_value.value,"y":y_value.value,"w":w_value.value,"h":h_value.value});

        $.ajax({
                          type:'POST',
                          url: 'sendfile.php',
                          data:{
                            'x_value': x_value,
                            'y_value': y_value,
                            'w_value': w_value,
                            'h_value': h_value,
                            'img_name':img_name,
                            'imagecount':imagecount,
                          },
                          success: function(data){
                            alert("success");
                            console.log(img_name);
                          }


      });
              
      });
图片:

上图显示了标记屏幕,用户在其中单击确认以存储标记详细信息

图像显示显示图像的屏幕,单击该屏幕应显示图像和标记的详细信息。[预期输出]

图片:

我使用下面的代码将标记详细信息推送到数组中:

      imgarray.push({"img_name":img_name.value,"x":x_value.value,"y":y_value.value,"w":w_value.value,"h":h_value.value});
预期的输出是当我在标记后再次单击图像时,它应该提醒标记详细信息存储在数组中的位置。 我试着这样做:

 alert("img_array"+img_array[0].img_name);

但它显示了未定义的警报。是否有人可以帮助我解决此问题,并帮助我打印警报消息上的所有标记详细信息。

使用警报是一种可怕的调试工具。尝试
console.log(img_数组[0])
并查看开发工具中的情况console@charlietfl我试过了,结果还是一样undefined@charlietfl同样的结果,未定义。。。这是个打字错误。有问题的代码正在使用imgarray而不是img_数组而不是$('.confirm')。单击(函数(){…var imgarray=[]…dovar imgarray=[];$('.confirm')。单击..。然后在其他事件处理程序中也可以访问它