ব্যক্তিগতভাবে আমি এএসপি. নেট এমভিসি অ্যাপ্লিকেশনগুলির অনেক দর্শনগুলিতে এটি পুনরাবৃত্তি প্রয়োজন হিসাবে দেখছি as
এজন্য আমি একটি মডেল শ্রেণি এবং একটি আংশিক দৃষ্টিভঙ্গি সংজ্ঞায়িত করেছি:
using Resources;
namespace YourNamespace.Models
{
public class SyConfirmationDialogModel
{
public SyConfirmationDialogModel()
{
this.DialogId = "dlgconfirm";
this.DialogTitle = Global.LblTitleConfirm;
this.UrlAttribute = "href";
this.ButtonConfirmText = Global.LblButtonConfirm;
this.ButtonCancelText = Global.LblButtonCancel;
}
public string DialogId { get; set; }
public string DialogTitle { get; set; }
public string DialogMessage { get; set; }
public string JQueryClickSelector { get; set; }
public string UrlAttribute { get; set; }
public string ButtonConfirmText { get; set; }
public string ButtonCancelText { get; set; }
}
}
এবং আমার আংশিক দৃষ্টিভঙ্গি:
@using YourNamespace.Models;
@model SyConfirmationDialogModel
<div id="@Model.DialogId" title="@Model.DialogTitle">
@Model.DialogMessage
</div>
<script type="text/javascript">
$(function() {
$("#@Model.DialogId").dialog({
autoOpen: false,
modal: true
});
$("@Model.JQueryClickSelector").click(function (e) {
e.preventDefault();
var sTargetUrl = $(this).attr("@Model.UrlAttribute");
$("#@Model.DialogId").dialog({
buttons: {
"@Model.ButtonConfirmText": function () {
window.location.href = sTargetUrl;
},
"@Model.ButtonCancelText": function () {
$(this).dialog("close");
}
}
});
$("#@Model.DialogId").dialog("open");
});
});
</script>
এবং তারপরে, প্রতিটি বার যখন আপনার দেখার প্রয়োজন হবে, আপনি কেবল @ এইচটিএমএল. পার্টিশিয়ালটি ব্যবহার করুন (এটি বিভাগের স্ক্রিপ্টগুলিতে করেছে যাতে জিকুয়েরি সংজ্ঞায়িত হয়):
@Html.Partial("_ConfirmationDialog", new SyConfirmationDialogModel() { DialogMessage = Global.LblConfirmDelete, JQueryClickSelector ="a[class=SyLinkDelete]"})
কৌশলটি হল JQueryClickSelector নির্দিষ্ট করা যা এমন উপাদানগুলির সাথে মেলে যা একটি কনফার্মেশন ডায়ালগের প্রয়োজন। আমার ক্ষেত্রে, ক্লাস সিলেঙ্কডিলিট সহ সমস্ত অ্যাঙ্কর তবে এটি সনাক্তকারী, আলাদা শ্রেণি ইত্যাদি হতে পারে আমার জন্য এটি একটি তালিকা ছিল:
<a title="Delete" class="SyLinkDelete" href="/UserDefinedList/DeleteEntry?Params">
<img class="SyImageDelete" alt="Delete" src="/Images/DeleteHS.png" border="0">
</a>