Я бы, вероятно, использовал диалоговое окно jQuery и поместил код разметки и инициализации в MasterPage, установив для autoOpen
значение false и скрытый по умолчанию. Я бы вставлял код, который взаимодействует с диалогом, на каждую страницу по мере необходимости.
<div id="modalDialog" title="Error">
<p id='modalDialogMsg'>An error has occurred.</p>
</div>
<script type="text/javascript">
$(function() {
$('#modalDialog').dialog({
autoOpen: false;
modal: true,
buttons: {
"OK" : function() {
$(this).dialog('close');
}
}
});
});
// You could "objectify" this, but I'll show as a global function
function showError( title, msg )
{
if (!title) {
title = 'Error';
}
if (!msg) {
msg = 'An error occurred.';
}
$('#modalDialogMessage').html(msg);
$('#modalDialog').attr('title',title)
.dialog('open');
}
</script>
Затем на вашей странице вы вводите код, который вызывает showError. Обратите внимание, что это должно быть после сценария выше, чтобы убедиться, что функция была определена. Что бы выплюнуло выглядело бы как:
<script type="text/javascript">
$(function() {
showError('Database connection error', 'There was an error connecting to the database.' )'
});
</script>