【发布时间】:2013-04-12 19:44:27
【问题描述】:
大家好,我的页面中有一个 div,它代表一个弹出窗口。我在窗口内有一个按钮。单击按钮时,我需要调用一个 javascript 函数。(我只需要在客户端执行此操作,而不是在服务器中执行此操作)。如果验证成功,则弹出窗口可以关闭。如果没有,它应该显示一条警告消息并STAY THE HERE INSTEAD OF CLOSING。仅当验证成功时,我才需要关闭弹出窗口。否则,它应该显示一个警报并留下来。我如何让它留下来?以下是我的代码。
Div 结构:
<script type="text/javascript">
$(function () {
$("#dialog:ui-dialog").dialog("destroy");
$('#TimeslotGroup').dialog({
autoOpen: false,
draggable: false,
resizable: false,
bgiframe: false,
modal: true,
width: 700,
title: "Timeslot Group Entry",
open: function (type, data) {
$(this).parent().appendTo("form");
}
});
});
function showDialog(id) {
$('#' + id).dialog("open");
}
function closeDialog(id) {
$('#' + id).dialog("close");
$("#dialog:ui-dialog").dialog("destroy");
}
//getter
var modal = $(".selector").dialog("option", "modal");
//setter
$(".selector").dialog("option", "modal", true);
</script>
<script type="text/javascript">
Sys.WebForms.PageRequestManager.getInstance().add_pageLoaded(function (evt, args) {
$('#TimeslotGroup').dialog({
autoOpen: false,
draggable: false,
resizable: false,
bgiframe: false,
modal: true,
width: 500,
title: "Timeslot Group Entry",
open: function (type, data) {
$(this).parent().appendTo("form");
}
});
});
</script><div id="TimeslotGroup" class="ui-widget-overlay" style="overflow-y: scroll;">
【问题讨论】:
-
只有在验证成功时才需要关闭弹出窗口。否则,它应该显示一个警报并停留。
-
你的验证在哪里?
-
谁在调用
closeDialog,验证逻辑在哪里 -
@Ian,这是函数的一部分。
if (newFromHour > oldFromHour || newFromHour > oldToHour) { alert("do not add."); }在这里,我需要让弹出窗口保持不变。 -
@Arun,closeDialog 与我的查询无关..我最近包含了验证条件..
标签: javascript popup modal-dialog