【问题标题】:Bootstrap's SelectPicker Issue with Google MapGoogle Map 的 Bootstrap SelectPicker 问题
【发布时间】:2015-03-06 08:01:15
【问题描述】:

我想在选择选择器中设置选定的选项,我有以下代码可以正常工作。

HTML:

<select class="form-control input-sm selectpicker" id="area_location_id">
    <option value="" selected="">Select</option>
    <option value="17">Al Barsha</option>
    <option value="82">Al Furjan</option>
    <option value="4924">Al Garhoud</option>
    <option value="5787">Al Jadaf</option>
    <option value="5684">Al Mamzar</option>
    <option value="123">Dubai Marina</option>
</select>
<div id="map-canvas"></div>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.10.3/jquery-ui.min.js">    </script>
<script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.1/js/bootstrap.min.js"></script> 
<script src="js/bootstrap-select.js"></script> 
 <script src="js/bootstrap-datepicker.js"></script> 
<script src="js/dropzone.js"></script> 
<script src="plugin/sumernote/summernote.min.js"></script> 

JQuery:

var userToSearchFor = " Marina";

$("#area_location_id").find("option:contains('" + userToSearchFor + "')").each(function () {
    $(this).attr("selected", "selected");
});

$('#area_location_id').selectpicker('val', userToSearchFor);
$('#area_location_id').selectpicker('refresh');

上面的代码正在运行,并且选择了“迪拜码头”。 FIDDLE

我想要什么:

现在我想在谷歌地图代码中使用这个代码,当用户选择任何位置时,它应该选择。

这是我的代码不工作

google.maps.event.addListener(map, "click", function (event) {

    var userToSearchFor = " Marina";
    $("#area_location_id").find("option:contains('" + userToSearchFor + "')").each(function () {
        $(this).attr("selected", "selected");
    });
    $('#area_location_id').selectpicker('val', userToSearchFor);
    $('#area_location_id').selectpicker('refresh');
});

现在相同的代码在这里不起作用。尽管控制在这里。

更新:当我包含此文件时,只有我的代码不起作用

bootstrap-select.js

有什么帮助吗?

【问题讨论】:

  • 当用户选择任何位置时,它应该选择。您添加的监听器将在地图点击时触发。
  • 是的,当我点击地图时,它没有选择“迪拜码头”......意味着相同的编码不起作用......尽管我可以获得点击事件

标签: jquery twitter-bootstrap google-maps-api-3


【解决方案1】:

没有理由不这样做。

function initialize() {

    var myLatlng = new google.maps.LatLng(46.2, 6.17);
    var mapOptions = {
        zoom: 4,
        center: myLatlng,
        mapTypeId: google.maps.MapTypeId.ROADMAP
    };
    var map = new google.maps.Map(document.getElementById("map-canvas"), mapOptions);

    google.maps.event.addListener(map, "click", function (event) {

        var userToSearchFor = " Marina";
        $("#area_location_id").find("option:contains('" + userToSearchFor + "')").each(function () {
            $(this).attr("selected", "selected");
        });
        $('#area_location_id').selectpicker('val', userToSearchFor);
        $('#area_location_id').selectpicker('refresh');
    });
}

initialize();

JSFiddle demo

【讨论】:

  • 当我包含这个文件时它不起作用'bootstrap-select.js'
  • 你在哪里包含它?如何?你的那部分代码在哪里?
  • 我正在创建一个不简单的引导下拉菜单,这就是为什么我需要包含这个文件...'mallscombined.com/gistlerdemo/js/bootstrap-select.js'
  • 你不能看我的评论吗? 在哪里如何您将此文件包含在内? MCVE!使用信息更新您的问题,因为这显然是其中最重要的部分。
  • 没有错误,但它不起作用。当我删除此链接时它正在工作..但这也删除了引导程序
猜你喜欢
  • 1970-01-01
  • 2020-02-03
  • 2017-10-08
  • 2020-02-05
  • 1970-01-01
  • 2018-09-24
  • 1970-01-01
  • 1970-01-01
  • 2014-07-18
相关资源
最近更新 更多