我试图在每次点击JQGrid的一行时使用jquery.simplemodal.js JQuery插件显示一个模态窗口。
执行此操作后,一旦用户在模态窗口中单击“是”,我将使用从我的行中检索到的信息在Iframe上显示文档,如果他们单击“否”,则Iframe会显示一个表单以编辑某些相关信息到这个文件。我们的想法是将Iframe内容留空,直到用户点击其中一个按钮。为了实现这一点,我使用JQGrid onSelectRow事件如下:
onSelectRow: function () {
var id = $("#tabResBusUbi").getGridParam('selrow');
var row = $('#tabResBusUbi').jqGrid('getRowData', id);
viewDocument = false;
myconfirm('Open the document view?', function () {
viewDocument = true;
});
if (viewDocument) {
$('#ifrShowPdf').ready(function () {
$('#divLoading').css('display', 'none');
});
$('#ifrShowPdf').attr('src', 'resource\\' + row.filepath);
$('#ifrShowPdf').css('display', 'block');
} else {
var rnd = Math.floor(Math.random() * 11);
$('#ifrShowPdf').attr('src', 'document.asp?r=' + rnd + '&o=d&a=a&p=' + id);
$('#ifrShowPdf').css('display', 'block');
}
return false;
}
function myconfirm(message, callback) {
$('#confirm').modal({
closeHTML: "<a href='#' title='Close' class='modal-close'>x</a>",
position: ["20%", ],
overlayId: 'confirm-overlay',
containerId: 'confirm-container',
onShow: function (dialog) {
var modal = this;
$('.message', dialog.data[0]).append(message);
$('.yes', dialog.data[0]).click(function () {
if ($.isFunction(callback)) {
callback.apply();
$('#confirm-overlay').css('z-index', 5000);
}
modal.close();
});
}
});
}
单击该行后,模式弹出窗口,但Iframe也会显示编辑文档表单,即使我没有单击任何选项按钮。如果我之后单击“是”选项,则会查看该文档,但这不是我打算做的。
我很感激任何建议让这项工作。