首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >将Ajax.ActionLink转换为按钮

将Ajax.ActionLink转换为按钮
EN

Stack Overflow用户
提问于 2012-03-01 23:50:38
回答 2查看 2.1K关注 0票数 0

我有一个ajax ActionLink。它工作得很好:

代码语言:javascript
代码运行次数:0
运行
复制
@Ajax.ActionLink("Supprimer", "RemovePersonToKeepInformed", "General", new { keepInformedPersonId = item.KeepInformedPersonId }, new AjaxOptions { Confirm = @UserResource.KeepInformedPersonRemoveConfirmation, HttpMethod = "Delete", OnSuccess = "JsonDelete_OnSuccess" }) 

现在,我想像一个按钮一样显示它。下面是我要做的:

代码语言:javascript
代码运行次数:0
运行
复制
<span class="button"> 
    @Ajax.ActionLink("Supprimer", "RemovePersonToKeepInformed", "General", new { keepInformedPersonId = item.KeepInformedPersonId }, new AjaxOptions { Confirm = @UserResource.KeepInformedPersonRemoveConfirmation, HttpMethod = "Delete", OnSuccess = "JsonDelete_OnSuccess" }) 
</span>

$('.button').button();

只有当用户点击文本“Supprimer”时,它才起作用。如果用户在按钮中的任意位置单击,则不起作用。

我如何修复它,以便允许用户单击按钮中的任何位置来触发ajax?

谢谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-03-01 23:53:40

通过添加, new { @class = "button" }button类应用于<a>标记本身。

票数 2
EN

Stack Overflow用户

发布于 2012-03-01 23:59:23

最简单的方法是设置链接样式,使其显示为按钮,而不是用跨度包装它。如果这是不可能的,那么您将需要添加一个click处理程序到调用在链接上单击的SPAN。这可能很容易,也可能不容易,这取决于链接的点击处理程序是否停止传播(您不希望生成的点击在跨度上冒泡到点击处理程序)。如果使用AjaxHelper很难做到这一点,那么使用jQuery手动重新创建帮助器的操作应该不是太难,因为您可以更好地控制发生的事情。

不过,最好的解决方案是将样式更改为链接本身。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9519318

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档