1

我想自动启动购物车提交。我有

<a href="javascript:alert('javascript');" onclick="alert('onclick')" class="simpleCart_checkout hudbtn primary right">Checkout</a>

和 javascript

<script>
$('.simpleCart_checkout').trigger('click');
</script>

因此,我click在页面加载时收到警报,但没有收到警报,javascript并且简单的购物车未提交数据。那么我还需要触发什么才能完全模仿链接点击?

谢谢

PS 当我在 Checkout 上单击鼠标时,simplecart 将数据提交到带有购物车项目等的另一个页面。但是如果我尝试模仿点击警报,只会发生而不是购物车提交。

4

3 回答 3

2

第一件事是第一件事。从 DOM 元素中删除所有内联的愚蠢:

<a href="#" class="simpleCart_checkout hudbtn primary right">Checkout</a>

第二。如果您要使用 jQuery,请使用 jQuery!

<script>
$('.simpleCart_checkout').on('click', function() {
     alert("onclick");
     return false;
}).trigger('click');
</script>

演示:http: //jsfiddle.net/maniator/dY26m/

于 2012-09-27T14:04:58.043 回答
1

.trigger()使用;来模拟对锚点的真实点击是不可能的。如果用户点击它,它只会执行默认行为。

.trigger('click')只会运行onclick处理程序。

于 2012-09-27T14:09:32.150 回答
0

首先,像

javascript:alert('');

不应该使用。当我复制粘贴代码时,我看到两个点击警报。我同意尼尔发布的方式。你就是这样做的。请记住,当您将 javascript 与 html 混合使用时,一切都会变得一团糟。

您会注意到这一点,但触发点击事件不允许重定向到新页面。这意味着实际上您无法通过触发点击链接来导航到新页面。由于 javascript:alert(''); 在 href 属性中,它将不起作用。

触发器旨在触发捕获的事件。不是实际点击次数。

于 2012-09-27T14:07:12.150 回答