目标:我想点击一个链接,并将生成的ajax调用返回的html加载到div中。
我使用JsHelper建立了一个链接,如下所示:
<?php echo $this->Js->link('Do some ajax!', array(
'controller' => 'items',
'action' => 'view',
1
), array('update' => '#item'));?>
但不是跟进ajax请求,而是遵循链接。
在jQuery中,可以使用event.preventDefault()
来压制链接的默认事件,但我找不到告诉JsHelper执行此操作的明显方法。
问题:如何阻止链接的默认事件? 替代地;我真的不应该使用链接吗?如果是这样,我应该使用什么?
答案 0 :(得分:1)
看JsHelper docs,看起来你会把它们并排放在一起:
echo $this->Js->link(
'Do some ajax!',
array('controller' => 'items','action' => 'view', 1),
array('update' => '#item')
);
this->Js->event('click', $this->Js->alert('hey you!'));
我怀疑你想要那里的alert()
,但那是来自文档,我没有其他任何东西。它似乎默认为return false;
,这是您应该用来取消点击的内容。这是它在标记中实际输出的内容:
$('#some-link').bind('click', function (event) {
alert('hey you!');
return false;
});
答案 1 :(得分:0)
所以链接被遵循的原因真是太愚蠢了。我没有正确地包含jQuery ...这里没有办法保存面部。 :/非常感谢Jared尝试帮助我!