Это потому, что вы заменяете содержимое #ErrorMessageDialog
только сообщением.При связывании сообщения вы должны указать целевой td
элемент, а не весь #ErrorMessageDialog
.Пример кода будет выглядеть следующим образом:
function showAlertDialog(message) {
var $dialog = $('#ErrorMessageDialog .target')
.html(message)
.dialog({
modal: true,
title: 'Data Error!',
width: 400,
buttons: {
Ok: function () {
$(this).dialog('close');
}
}
});
$dialog.dialog('open');
}
$("#btnOk").click(function(){
showAlertDialog('Ok is clicked');
});
$("#btnCancel").click(function(){
showAlertDialog('Cancel is clicked');
});
==
<script src="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.js"></script>
<div id="ErrorMessageDialog" style="display:none;">
<table>
<tr>
<td><img src="https://www.google.co.in/logos/doodles/2014/world-cup-2014-1-6584893165273088-res.png"/></td>/*display icon*/
<td class="target"></td>/*display error message*/
</tr>
</table>
</div>
<input type="button" id="btnOk" value="OK"/>
<input type="button" id="btnCancel" value="Cancel"/>
Здесь я нацеливаюсь на класс .target
, который я дал целевому элементу td
, с которым вы хотите связатьсообщение.