0
我最近一直在学习MVC 3,并且发现了两种从我的列表视图中删除记录的解决方案。不过,我希望他们两个的组件,但我在JavaScript中缺乏知识使这非常困难。使用jquery-ui对话框的MVC3 Ajax链接确认对话框
我有这两个链接删除:
@Html.ActionLink("Delete", "Delete",
new { id = item.ID }, new { @class = "delete-link" }) |
@Ajax.ActionLink("Delete Ajax", "Delete", "MyController",
new {id = item.ID},
new AjaxOptions {
HttpMethod = "POST",
OnBegin = "return ConfirmDone()",
OnSuccess = "deleteConfirmation"
})
第一个使用下面的JavaScript删除的记录:
<script>
$(function() {
var deleteLinkObj;
// delete Link
$('.delete-link').click(function() {
deleteLinkObj = $(this);
$('#delete-dialog').dialog('open');
return false;
});
//definition of the delete dialog.
$('#delete-dialog').dialog({
autoOpen: false, width: 400, resizable: false, modal: true,
buttons: {
"Continue": function() {
$.post(deleteLinkObj[0].href, function (data)
{
var rowId = "#myTableItem-id-" + data.id;
$('.myTable').find(rowId).hide('slow');
});
$(this).dialog("close");
},
"Cancel": function() {
$(this).dialog("close");
}
}
});
});
</script>
第二链路使用这个脚本功能进行确认:
<script>
function ConfirmDone() {
return confirm("Are you sure you want delete this item?");
}
</script>
现在这两种解决方案都可以正常工作,但我更喜欢编码的第二个链接,但我喜欢jquery-ui在第一个链接中生成的确认框。所以我想将它们混合在一起。
我想我需要做的是,当Ajax.ActionLink
呼叫ConfirmDone()
然后我需要显示一个jQuery对话框,因为我对第一个链接。然而,我不确定如何产生这个,并允许这个对话框根据按下的按钮返回true或false。
任何帮助将不胜感激。
非常感谢。
你的意思是返回'false'不显示默认的确认对话框,并显示你想要的jQuery对话框 – TheVillageIdiot