我在使用jquery和bootstrap的下拉列表中遇到了问题。在以前的版本中,这似乎是一件很常见的事情,我不明白为什么我现在会出现错误。HTML如下:
<html>
<nav class="navbar navbar-default navbar-static">
...Collapsible definition for mobile...
<ul class="nav navbar-nav">
<li class="dropdown dropdown-large">
<a href="#" class="dropdown-medium" data-toggle="dropdown">Dropdown 1</a>
<ul class="col-sm-3">
<li class="dropdown-header">Header 1</li>
<li><a href="Page1.aspx">Page1</a></li>
</ul>
</li>
</ul>
</nav>
<script src="Scripts/jquery-3.3.1.js" type="text/javascript/>
<script src="Scripts/bootstrap.js" type="text/javascript/>
</html>
现在,im获取的问题与第一次单击下拉列表和ref=“”有关。jquery显然试图将其解析为链接或页面?完全错误如下:
未捕获错误:语法vm jquery-3.3.1.js:1541错误,无法识别的表达式:。#
at function.sizzle.error(vm29 jquery-3.1.1.js:1541)
at function.sizzle.tokenize(vm29 jquery-3.1.1.js:2193)
在function.sizzle.select上(vm29 jquery-3.1.1.js:2620)
在function.sizzle[as find]上(vm29 jquery-3.1.1.js:845)
在jquery.fn.init.find(vm29 jquery-3.1.1.js:2873)
在新的jquery.fn.init上(vm29 jquery-3.1.1.js:2983)
在jquery(vm29 jquery-3.1.1.js:139)
在getparent上(vm30 bootstrap.js:298)
…HTML定位数据
注意,我也试过使用jquery 2.2.4…菜单不显示,也没有错误。我通过安装jquery 3.3.1并在该页面上导入jquery 2.2.4而不是3.3.1版本使其在本地工作……它在本地工作,但在发布时不工作。
编辑
在两个脚本导入之间从umd文件夹添加popper.js,我仍然得到相同的错误
编辑2
这是我正在使用的自定义css。
https://bootsnipp.com/snippets/featured/large-dropdown-menu
这在本地工作,尽管方式很奇怪。nuget包jquery 2.2.4已安装并保留在.net捆绑包中,但使用页面上脚本部分的3.1.1版本,它可以工作。如果我更新到3.3.1版本,就会得到这个错误。Bootstrap版本3.0.0和4.1.1混合并尝试了不同的组合,但所有的组合都没有成功,或者得到了错误消息。
Edit3实例
nav部分和css是从answers部分的工作片段直接复制的。
通过nuget管理器安装的脚本与版本匹配
(页面上http的重定向用于占位符。)单击下拉列表不会产生任何结果…
编辑4
感谢Fnostro(
https://stackoverflow.com/users/1971438
)为了进行对话和调试…脚本管理器正在加载标记中的加载项,并且加载了每个标记的不同版本。
Nuget包
JQuery 3.3.1
引导4.1.1