[英]How to simulate a click on a @Html.ActionLink in javascript?
[英]Click event not firing on link generated with Html.ActionLink
我有一个ActionLink,如下所示:
@Html.ActionLink("-Pg", "SupprimerPage", "Section",
new { pageId = @item.Id }, new { @id = "ConfirmDeletePage", @class = "editLink", style
= "width:30px" })
而我的脚本:
$(document).ready(function () {
$(document).on('click', '#ConfirmDeletePage', function () {
var x=confirm("Confirm delete page?");
console.log(x);
if (x == true){
return true;
}
else {
return false;
}
});
});
当我在<a>
标记中使用硬编码链接时,它可以正常工作。 但是,当我尝试使用Html.ActionLink
生成链接时,未调用事件处理程序。 有什么帮助吗?
对于您的问题“当我单击“是”时,没有调用ActionLink中的方法”,这是因为您在“是”按钮上返回了“是”,因此在执行功能后,它会跟随链接“ href”,这就是在ActionLink中似乎该方法的原因不被调用,仅返回false或使用event.preventDefault();
在运行“是”按钮的真实部分的内部
$(document).ready(function () { $(document).on('click', '.editLink', function (event) { var x=confirm("Confirm delete page?"); console.log(x); if (x == true){ return true; } else { alert('Pressed NO') return false; } }); });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script> <a href="http://hello.com" class="editLink" >Click me !</a>
有关更多信息,请使用此anchor-tag-with-javascript-onclick-event
如果它适用于硬编码链接,但不适用于使用ActionLink的链接,则表示ActionLink必须生成与硬编码链接不同的内容,这意味着jQuery选择器( #ConfirmDeletePage
)找不到元素。
您可以通过使用浏览器的开发人员工具检查ActionLink生成的<a...
标签来确认这一点。
基于具有指定HTML id的Html.ActionLink问题,也许您需要将@id = "ConfirmDeletePage"
更改为id = "ConfirmDeletePage"
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.