我有一个ajax ActionLink。它运作得很好:
@Ajax.ActionLink("Supprimer", "RemovePersonToKeepInformed", "General", new { keepInformedPersonId = item.KeepInformedPersonId }, new AjaxOptions { Confirm = @UserResource.KeepInformedPersonRemoveConfirmation, HttpMethod = "Delete", OnSuccess = "JsonDelete_OnSuccess" })
现在我想像按钮一样显示它。这是我的工作:
<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?
感谢。
答案 0 :(得分:2)
通过添加button
将<a>
课程应用于, new { @class = "button" }
标签。
答案 1 :(得分:0)
如果您可以将链接设置为按钮的样式而不是使用SPAN包装它,那将是最简单的。如果那是不可能的话,你需要在SPAN上添加一个点击处理程序来调用链接上的点击。根据链接的点击处理程序是否停止传播(您不希望生成的点击冒泡到SPAN上的点击处理程序),这可能也可能不容易做到。如果这对AjaxHelper来说太难了,那么用jQuery手动重新创建帮助器的动作应该不会太困难,你可以更好地控制发生的事情。
但最好的解决方案是将样式更改为链接本身。