2014-06-19 28 views
-2

在链接被触发前,我需要一个YES/NO提示。我已经尝试了几种解决方案,但没有一个能解决问题。除了confirm()之外,没有人甚至阻止了链接的触发。但是,confirm()不会给我更改内容或更改按钮标签的机会。 我想为网址添加一个值,具体取决于用户选择的内容。另一个问题是,我在页面上有这些链接的列表(事件)。 任何帮助,将不胜感激。发射前是/否链接

编辑1

$("a").click(function(e) { 
    e.preventDefault(); 
}); 

不工作,在这种情况下,我不知道如何访问的URL。我只是想推迟网址的调用。

编辑2 这是创建链接的代码(CakePHP的):

echo $this->Html->link(
    $this->Html->image('image.png',array(
     'title' => __('title'), 
     'alt' => __('title') 
    )), 
    array(
     'action' => 'action', 
     $eventId, 
     $anotherVar, 
     $this->Paginator->current(), 
     $customerId 
    ), 
    array('escape' => false) 
); 

现在我要问客户一个YES/NO问题,根据不同的客户选择什么添加网址的另一个参数。直通上面的代码中创建

编辑3 的HTML代码:

<a href="/system/controller/function/value1/value2"> 

+1

向我们展示一些代码。你有什么尝试?您可能需要某种插件。 – putvande

+0

您发布的代码似乎并不是链接本身。在不知道link()方法的情况下,没有人能够知道链接将如何在HTML中输出,并且这是您添加JavaScript的地方。你应该编辑html页面而不是php代码才能让javascript运行。 –

+1

@magic_al链接函数属于cakephp框架。对不起,没有提到这一点。 – MrSmith

回答

0
<a href="home/about-me" onclick="return confirm('Are you sure to move to this page');">click me</a> 

任何开发商有史以来最简单的事情。

这里是一个自定义的确认框参考,

Custom Confirm Box

不然,如果你想改变整个盒子和功能,然后去了jQuery模态对话框,

jQuery Modal

+0

你能读吗?我曾说过,我不想确认,因为我想更改按钮标签并根据用户点击的按钮做一些事情。 – MrSmith

+0

立即查看更新 –

+0

在其他情况下,不会推迟网址的调用。我不知道为什么preventDefault();不工作。 – MrSmith

0

如果你想在提交链接之前采取任何行动,你可以使用jQuery.click()。此外,您还可以通过

event.preventDefault(); 

停用(以下链接)的默认行为,所以,你会想出这样的事情:

jQuery('a.mylink').click(function(event){ 

    // prevent following link 
    event.preventDefault(); 

    // validation and action 
}); 

后您通过验证并采取适当的行动,你可以开火通过使用的点击事件:

jQuery("a.mylink").trigger("click"); 

希望我对你有帮助。