在按钮单击时将图像URL数据显示在弹出框中而不禁用背景

时间:2016-04-26 12:51:03

标签: javascript jquery html openlayers-3

在这里,我试图在Openlayers 3中调用WMS图层的图例。我能够接收图层的图例,但我想在弹出框中使用可移动和关闭按钮。

这是.html页面:

<label><input type="checkbox" id="landuse"  />LANDUSE</label>
<div id="map" class="map">
            <div class="udiv_legende" id="legende_1">
        <img id='legid'>
           </div>
    <div id="popup"></div>
    </div>

这是javascript

 //this the layer 
    var landuseLayer = new ol.layer.Image({
             coordinates: [79.14511833527447, 20.987418098133496, 79.2018842619151, 21.050233196545],
                source: new ol.source.ImageWMS({
                  url: 'http://localhost:8080/geoserver/sagy/wms',
                  params: {'LAYERS': 'sagy:pachgaon_LULC_Project', transparent: true,  minScale: 8},


                }),
                visible: false
              });
        var view = new ol.View({
          Projection: 'EPSG:4326',
           center: ol.proj.fromLonLat([79.17436, 21.01668]),
                        zoom: 4
          });

        var map = new ol.Map({
          layers: [
            new ol.layer.Tile({
              preload: 4,
                    source: new ol.source.OSM()
                  })
          ],
          target: 'map',
          view: view
        });
        $('input[type=checkbox]').on('change', function() {
        var lyrname;
          var layer = {

            landuse: landuseLayer,
        }[$(this).attr('id')];

         lyrname = $(this).attr('id');
          alert($(this).attr('id'));
         if(lyrname== 'landuse'){
         alert('luse');
         document.getElementById("legid").src="http://localhost:8080/geoserver/wms?REQUEST=GetLegendGraphic&VERSION=1.0.0&FORMAT=image/png&WIDTH=20&HEIGHT=20&LAYER=sagy:pachgaon_LULC_Project"; 
//like here i'm calling those legends but i want in a popup box of this url data 
         }

正如你在&#34;如果&#34;条件我正在调用图片网址,但我希望它在弹出框中。任何人都可以告诉我当我检查开启按钮时如何以弹出形式获取图像源数据?

1 个答案:

答案 0 :(得分:1)

尝试这样的jQuery对话框功能:

 $(function () {
            $("#yourDialogId").dialog({
                autoOpen: false,
                show: {
                    effect: "clip",
                    duration: 600
                },
                hide: {
                    effect: "clip",
                    duration: 600
                },
                buttons: {
                    Ok: function () {
                        $(this).dialog("close");
                    }
                }
            });

            $("#opener").click(function () {
                $("#dialog").dialog("open");
            });
        });