如何将jquery提交的php表单GET数据回显到另一个javascript代码和URL中


How to echo a php form GET data submitted by jquery into another javascript code and URL?

我正在开发一个应用程序,该应用程序将光栅/图像地图(png,tif)提取并显示为传单地图。然而,我不喜欢提交表单时刷新的页面和地图。

此外,我希望地图只刷新图像层。使用正常的方式,它充满了引用。所以我设法让这个代码正常工作。

    $('#forms').on('submit',function(e) {
        $.ajax({
            url:'fun.php',
            data:$('#forms').serialize(),
            type:'GET',
            success:function(result){
                $('#downloads').html(result);
            }
        });
        e.preventDefault();
    });

还有这里的传单图像层。

raster = L.imageOverlay('<?php echo $datafile;?>', [[33.00, 31.00], [43.50, 35.00]]);  

因此,确切的问题是,$datafile无法在传单光栅层上得到响应,我想在提交后重置表单值。我试图在图像层上使用传单方法中的setUrl,但它不起作用。

谢谢你的帮助!

问题解决了。首先,我将echo $datafile更改为echo '<script type="text/javascript">imageUrl = "'. $datafile. '"; </script>';这个js变量在html输出页面中得到了响应。然后,可以调用js变量imageUrl。

图像显示出现了另一个问题。当找不到文件时,我使用display:none隐藏图像层div。这导致图像无法显示。因此,在jquery成功函数中,我必须添加$("img.leaflet-image-layer.leaflet-zoom-animated").show();

然后一个朋友帮我添加了一个使用传单的setUrl()函数的函数,用于异步更改imageUrl。