javascript - Bootstrap 下拉菜单 - 仅复选框选择而不选择文本

标签 javascript html twitter-bootstrap

我有一个 Bootstrap 下拉菜单。当您点击它时,它会根据给定的类别(例如博物馆或电影院)在我的 webgl map 中突出显示某些建筑物。

目前,单击该复选框即可。但点击旁边的文字也会突出显示该建筑。这很好,但如果您单击文本,它不会选中复选框,因此建筑物会突出显示,但复选框不会被选中。这让用户感到困惑。

我尝试过不给文本提供指针事件,但这似乎不起作用。

网站:explorecanterbury.co.uk(下拉菜单是导航栏上的第一个图标)

<nav class="navbar navbar-default" style="z-index:5;">
    <!-- Brand and toggle get grouped for better mobile display -->
    <div class="navbar-header">
      <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1" aria-expanded="false">
        <span class="sr-only">Toggle navigation</span>
        <span class="icon-bar"></span>
        <span class="icon-bar"></span>
        <span class="icon-bar"></span>
      </button>
    </div>

       <!-- Collect the nav links, forms, and other content for toggling -->
    <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
      <ul class="nav navbar-nav">
        <li type="button" class="btn dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"><svg>
</li>
            <ul class="dropdown-menu">
                <li><a id="alltoggle" class="small toggle" data-value="option2" tabIndex="-1"><input type="checkbox"/>&nbsp;Show All</a></li>
                <li><a id="mgtoggle" class="small toggle" data-value="option3" tabIndex="-1"><input class="uncheck" type="checkbox"/>&nbsp;Museums and Galleries</a></li>
                <li><a id="landmarktoggle" class="small toggle" data-value="option4" tabIndex="-1"><input class="uncheck" type="checkbox"/>&nbsp;Landmarks</a></li>
                <li><a id="shoppingtoggle" class="small toggle" data-value="option5" tabIndex="-1"><input class="uncheck" type="checkbox"/>&nbsp;Shopping</a></li>
                <li><a id="hotelstoggle" class="small toggle" data-value="option6" tabIndex="-1"><input class="uncheck" type="checkbox"/>&nbsp;Hotels + Bed &amp; Breakfast</a></li>
                <li><a id="churchestoggle" class="small toggle uncheck" data-value="option7" tabIndex="-1"><input class="uncheck" type="checkbox"/>&nbsp;Churches</a></li>
                <li><a id="cinematoggle" class="small toggle uncheck" data-value="option8" tabIndex="-1"><input class="uncheck" type="checkbox"/>&nbsp;Cinemas</a></li>
            </ul>
        <li class="icon_display"><svg></li>
        <li class="icon_display"><svg></li>

      </ul>
      <div class="searchBar">
            <div class="input-group" style="padding-left: 10px;">

  <input type="text" class="form-control ui-autocomplete-input" placeholder="Search" id="srch-term" autocomplete="off">

  <span role="status" aria-live="polite" class="ui-helper-hidden-accessible"></span>

  <svg>

</div>

    </div><!-- /.navbar-collapse -->
  </div><!-- /.container-fluid -->
</nav>

最佳答案

您将需要使用标签元素。将文本包围在标签元素中,并为输入元素指定一个 id。然后将标签元素的 for 设置为输入的 id。

例如。

<a id="alltoggle" class="small toggle" data-value="option2" tabIndex="-1">
   <input type="checkbox" id="show-all"/>
   <label for="show-all">&nbsp;Show All</label>
</a>

关于javascript - Bootstrap 下拉菜单 - 仅复选框选择而不选择文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36432398/

相关文章:

CSS 按钮状态怪异 - 按住单击状态?

javascript - 如何从外部文件访问模型 View 内的变量

javascript - 计算 HH :mm format 中的时间差

javascript - 如何在IE中以其原始平滑度显示图像

html - 如何创建包含图像和文本的按钮

jquery - 如何在 jQuery UI 布局切换器中使文本垂直?

javascript - 通过单击 Bootstrap 下拉菜单将图像或文本插入静态网页上的 div

javascript - 尝试将轮播添加到网页而不重定向

javascript - 跨多个页面使用一个元素

java - 使用 ScriptManager (Rhino) 从 Java 使用 Javascript HTML5 类型数组,怎么样?