gpt4 book ai didi

javascript - netsuite是否支持preventDefault()?

转载 作者:行者123 更新时间:2023-11-28 07:21:36 25 4
gpt4 key购买 nike

我正在使用 Bootstrap 创建选项卡内容。它在 netsuite 之外运行良好。但是一旦我将此页面放入 netsuite 中,就会出现错误,提示 “无法分配给错误的只读属性 'preventDefault'”

我的页面是这样的

HTML:

<ul id="hireTab" class="nav nav-tabs" data-tabs="tabs">
<li class="active"><a href="#tabOne" data-toggle="tab">One</a>
<li class="active"><a href="#tabTwo" data-toggle="tab">Two</a>
<li class="active"><a href="#tabThree" data-toggle="tab">Three</a>
</ul>

<div class="tab-content">
<div id="tabOne" class="tab-pane active">
One, one one
</div>
<div id="tabTwo" class="tab-pane active">
Two, two two
</div>
<div id="tabThree" class="tab-pane active">
Three, three three
</div>
</div>

JS:

<script type="text/javascript">
jQuery(function() {
jQuery('#hireTab a').click(function(e) {
e.preventDefault();
jQuery(this).tab('show');
});
});
</script>

仔细一看,我发现选项卡更改正在起作用。但选项卡更改后,preventDefault 不会停止页面跳转。

知道为什么会这样或有什么解决方案吗?我是 netsuite 的新手,所以如果这个问题很愚蠢,请耐心等待。

更新:1 小时的谷歌搜索 Bootstrap 我到达此页面。 http://backbonejs.org/#Router所以看来主干正在劫持我的浏览器并改变它的行为。

语法href="#xxx"被backbone拦截并解释为“HOME_URL/xxx”。

现在的问题是,当我不想弄乱主干代码而我不确定它将如何影响项目的其他部分时,如何阻止主干执行此操作。

最佳答案

我的临时解决方案是event.stopPropagation()

最终工作代码是:

<script type="text/javascript">
jQuery(function() {
jQuery('#hireTab a').click(function(e) {
e.preventDefault();
e.stopPropagation();
jQuery(this).tab('show');//Maybe this line is not needed
});
});
</script>

这个函数的作用是终止请求并阻止它沿着 DOM 树向上爬。

Description: Prevents the event from bubbling up the DOM tree, preventing any parent handlers from being notified of the event.

这是一种残酷的做法。我确信有更优雅或更原生的方法可以让它发挥作用。

关于javascript - netsuite是否支持preventDefault()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30249940/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com