我有一个包含操作链接的列表。所有链接都必须在模态弹出窗口中通过参数加载部分 View 。
链接:
@model IEnumerable<string>
<ul>
@foreach (var item in Model)
{
<li>
@Html.ActionLink(item, "MyAction", null, new {code = item}, new {@class = "myclass" })
</li>
}
</ul>
我的行动:
public ActionResult MyAction(string code)
{
// logic
var model = ...
return PartialView("_MyPartialView", model);
}
我的 View 与模态弹出窗口和 JavaScript 函数:
<script type="text/javascript">
$(function() {
$(function() {
$('#my-dialog').dialog({
autoOpen: false,
width: 400,
modal: true
});
$('.myclass').click(function (e) {
e.preventDefault();
$('#my-dialog').load(this.href, function () {
$(this).dialog('open');
});
return false;
});
});
</script>
<div id="my-dialog"></div>
但是点击actionlink上的js函数不起作用,部分 View 只是在新页面中加载。我尝试在这个函数中设置断点,但是断点不起作用,这意味着该函数没有通过单击事件调用。谢谢建议
最佳答案
试试这个......
<script type="text/javascript">
$(function() {
$(function() {
$('#my-dialog').dialog({
autoOpen: false,
width: 400,
modal: true
});
$(body).on('click','.myclass',function(e){
e.preventDefault();
$('#my-dialog').load(this.href, function () {
$(this).dialog('open');
});
return false;
});
});
</script>
<div id="my-dialog"></div>
关于javascript - 带有 javascript 函数的 ASP.NET MVC ActionLink,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36448272/