谷歌地图自动完成列表显示在 AJAX ModalPopup - ASPX 后面

Posted

技术标签:

【中文标题】谷歌地图自动完成列表显示在 AJAX ModalPopup - ASPX 后面【英文标题】:Google Maps Autocomplete List Showing Behind AJAX ModalPopup - ASPX 【发布时间】:2018-01-29 22:53:04 【问题描述】:

我有以下从textbox 读取字符串的 JQuery 代码。该字符串应该填充地址或街道名称等,以便在 Google 地图中找到。

    $(function () 
    $("#txEnterStreet").geocomplete(
        map: ".map_canvas",
        details: "fieldset",
        markerOptions: 
            draggable: true
        
    );

    $("#txEnterStreet").bind("geocode:dragged", function (event, latLng) 
        $("input[name=lat]").val(latLng.lat());
        $("input[name=lng]").val(latLng.lng());
        $("#reset").show();
    );

    $("#btnFind").click(function () 
        $("#txEnterStreet").trigger("geocode");
    ).click();
);

我发现的问题是自动完成列表没有显示在 AJAX 模态弹出窗口的前面,而是在它的下面,如图所示。我找不到让它显示在前面的方法。我没有 CSS 类来修改 textbox。我正在使用此处提供的 JQuery.Geocomplete.JS 插件:jQuery Geocoding and Places Autocomplete Plugin

【问题讨论】:

【参考方案1】:

经过大量研究,终于找到了解决方案。对于包含代码的 CSS,我将其修改为:

    .modalBackground6 
    background-color: Black;
    filter: alpha(opacity=70);
    opacity: 0.7;
    /*z-index: 9999 !important;*/
    z-index: 1 !important;


/*for the panel*/
.modalPopup6 
    background-color: #ffffff;
    border-width: 1px;
    border-style: solid;
    border-color: Black;
    border-radius: 1px;
    padding-top: 5px;
    padding-left: 18px;
    padding-right: 18px;
    padding-bottom: 1px;
    width: 950px;
    height: 720px;

    /*z-index: 9999 !important;*/
    z-index: !important;


我在这个网站上找到了解决方案:specify z-index。我没有更改 jQuery 中的任何内容。 CSS 现在将 z-index 修改为:

            <ajax:ModalPopupExtender ID="ModalPopupGoogleMaps" runat="server" PopupControlID="pnlGoogleMaps" DropShadow="false" TargetControlID="lnkFake"
            CancelControlID="btnCloseMap" BackgroundCssClass="modalBackground6" BehaviorID="ModalPopupGoogleMaps">
        </ajax:ModalPopupExtender>

        <asp:Panel ID="pnlGoogleMaps" CssClass="modalPopup6" runat="server" Style="top: 6% !important; display:none;"> 

显示其工作原理的图片:

【讨论】:

以上是关于谷歌地图自动完成列表显示在 AJAX ModalPopup - ASPX 后面的主要内容,如果未能解决你的问题,请参考以下文章

谷歌地图和谷歌位置自动完成冲突

谷歌地图仅自动填充带有数字的街道

如何从谷歌地图自动完成 api 获取邮政编码

谷歌地图标记不通过ajax动态显示

谷歌地图显示为灰色框

谷歌地图自动完成动态数组