У мене виникли проблеми з поверненням відповіді з діалогового вікна, але, врешті-решт, я знайшов рішення, поєднавши відповідь з цього іншого питання відображення-так-і-ні-кнопки-замість-ок-і-скасувати-підтвердити- поле з частиною коду з діалогового вікна модального підтвердження
Ось що було запропоновано в іншому питанні:
Створіть власне поле підтвердження:
<div id="confirmBox">
<div class="message"></div>
<span class="yes">Yes</span>
<span class="no">No</span>
</div>
Створіть свій власний confirm()
метод:
function doConfirm(msg, yesFn, noFn)
{
var confirmBox = $("#confirmBox");
confirmBox.find(".message").text(msg);
confirmBox.find(".yes,.no").unbind().click(function()
{
confirmBox.hide();
});
confirmBox.find(".yes").click(yesFn);
confirmBox.find(".no").click(noFn);
confirmBox.show();
}
Телефонуйте за своїм кодом:
doConfirm("Are you sure?", function yes()
{
form.submit();
}, function no()
{
// do nothing
});
МОЇ ЗМІНИ
Я змінив вищезазначене, щоб замість дзвінків confirmBox.show()
я використовував confirmBox.dialog({...})
це так
confirmBox.dialog
({
autoOpen: true,
modal: true,
buttons:
{
'Yes': function () {
$(this).dialog('close');
$(this).find(".yes").click();
},
'No': function () {
$(this).dialog('close');
$(this).find(".no").click();
}
}
});
Інша зміна, яку я вніс, полягала в тому, щоб створити divBox підтвердження у функції doConfirm, як це робив ThulasiRam у своїй відповіді.