【发布时间】:2017-06-19 08:02:13
【问题描述】:
要创建超链接,我使用以下代码。
<a data-toggle="tab" data-bind="attr: { href: '../Company/Index/' + IndexID }, text: XYZ"></a>
代码的主要目的是从当前关卡向后移动一个关卡。
生成的HTML如下。
<a data-toggle="tab" data-bind="attr: { href: '../Company/Index/' + IndexID }, text: DateTimeStamp" href="../Company/Index/0">XYZ</a>
当我们尝试点击超链接时,我们会收到错误消息
Uncaught Error: Syntax error, unrecognized expression: ../Company/Index/0
at Function.Sizzle.error (jquery-1.9.0.js:4411)
at tokenize (jquery-1.9.0.js:5057)
at select (jquery-1.9.0.js:5439)
at Function.Sizzle [as find] (jquery-1.9.0.js:3984)
at init.find (jquery-1.9.0.js:5553)
at init (jquery-1.9.0.js:179)
at jQuery (jquery-1.9.0.js:53)
at b.show (bootstrap.min.js:9)
at HTMLAnchorElement.<anonymous> (bootstrap.min.js:9)
at Function.each (jquery-1.9.0.js:631)
Sizzle.error @ jquery-1.9.0.js:4411
tokenize @ jquery-1.9.0.js:5057
select @ jquery-1.9.0.js:5439
Sizzle @ jquery-1.9.0.js:3984
find @ jquery-1.9.0.js:5553
init @ jquery-1.9.0.js:179
jQuery @ jquery-1.9.0.js:53
b.show @ bootstrap.min.js:9
(anonymous) @ bootstrap.min.js:9
each @ jquery-1.9.0.js:631
each @ jquery-1.9.0.js:253
a.fn.tab @ bootstrap.min.js:9
(anonymous) @ bootstrap.min.js:9
dispatch @ jquery-1.9.0.js:3045
elemData.handle @ jquery-1.9.0.js:2721
但是,当我们右键单击并在新标签页中打开它时,它可以完美运行。
任何有用的指针将不胜感激。
【问题讨论】:
-
你这样做的目的是什么?进行整页请求或显示引导选项卡?因为正如我所见,问题在于您正在混合 url(这就是在新选项卡中打开有效的原因)和引导选项卡插件(需要一个有效的选择器来决定显示哪个选项卡);此功能会拦截
a的默认行为,因此不会发生请求,但只要涉及引导程序,href中的值就不是有效的选择器。因此,答案取决于您是想通过 http 请求实际导航,还是按应有的方式使用引导选项卡。
标签: jquery asp.net-mvc knockout.js hyperlink