Iam尝试在点击asp.net页面中的按钮时在jquery模式对话框中打开弹出登录表单。但模态对话框并不是一个弹出窗口。请告诉我哪里做错了。
这是我的HTML代码:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="ModalForm.aspx.cs" Inherits="ModalForm" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<script src="js/jquery.js" type="text/javascript"></script>
<link href="css/jquery.modaldialog.css" rel="stylesheet" type="text/css" />
<script src="js/jquery.modaldialog.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function() {
$("#dialog").dialog({
bgiframe: true,
autoOpen: false,
height: 300,
modal: true,
buttons: {
Cancel: function() {
$(this).dialog("close");
}
},
close: function() {
allFields.val("").removeClass("ui-state-error");
}
});
// Display the modal dialog.
$("#btndialog").click(function() {
$("#dialog").dialog("open");
});
});
</script>
</head>
<body>
<form id="form1" runat="server">
<div id="dialog" title="Please Login">
<asp:Login ID="LoginForm" runat="server" />
</div>
<asp:Button ID="btndialog" runat="server" Text="Click" />
</form>
</body>
</html>
感谢
答案 0 :(得分:0)
javascript代码看起来是正确的。
检查浏览器是否找到.js
个文件。
否则,ASP.NET会更改元素ID,请尝试使用ClientID
属性:
$(document).ready(function() {
$("#<%= dialog.ClientID %>").dialog({
bgiframe: true,
autoOpen: false,
height: 300,
modal: true,
buttons: {
Cancel: function() {
$(this).dialog("close");
}
},
close: function() {
allFields.val("").removeClass("ui-state-error");
}
});
// Display the modal dialog.
$("#<%= btndialog.ClientID %>").click(function() {
$("#<%= dialog.ClientID %>").dialog("open");
});
});