一:Jquery.UI dialog
1 CSHml
@Scripts.Render("~/Scripts/jquery-1.10.2.js")
@* @Scripts.Render("~/Scripts/jquery-ui.js")*@
@* <script src="~/Scripts/jquery.myframe.js"></script>*@
<div id="dialog-confirm" style="display: none;">
@Html.Action("UserList", "SMS", new { area = "Pubs" })
</div>
UserLIst 为子页面
<script>
//$(function () {
// var dialog;
// dialog = $("#dialog-confirm").dialog({
// autoOpen: false,
// resizable: false,
// position: 'center',
// height: 470,
// width: 500,
// modal: false,
// open: function () {
// //$(".ui-dialog-titlebar").hide();
// //$(".ui-dialog").hide();
// }
// });
// $("#user").click(function () {
// dialog.dialog("close");
// dialog.dialog("open");
// setdialogposition($(this), $("#dialog-confirm"));
// });
//});
</script>
缺点:不能在子页面进行提交等刷新操作,因为这个是作为父页面的一部分出现,是包含关系
方式二: Layer 请参照1.8.5 帮助文档
父页面
<link href="~/Plugin/layer/skin/layer.css" rel="stylesheet" />
<script src="~/Plugin/layer/layer.min.js"></script>
$(function () {
$("#user").click(function () {
$.layer({
type: 2,
closeBtn: [0, true],
shadeClose: false,
shade: [0.5, '#000'],
border: [0],
title: "用户选择",
offset: ['20px', ''],
area: ['1000px', ($(window).height() - 50) + 'px'],
iframe: { src: '/Pubs/SMS/UserList/' }
});
});
});
<input id="Receiver" type="text" />
<input id="ReceiverID" type="hidden" />
子页面
@Scripts.Render("~/Scripts/jquery-1.10.2.js")
@Scripts.Render("~/Scripts/jquery-ui.js")
@Scripts.Render("~/Scripts/jquery-cookie.js")
@Scripts.Render("~/Scripts/tools.js")
<script type="text/javascript">
function setUserName(UserName, UserID) { //对自己来说需要学习的部分
parent.document.getElementById("Receiver").value = UserName; //给父页面控件赋值
parent.document.getElementById("ReceiverID").value = UserID; //给父页面控件赋值
//关闭父页面
var index = parent.layer.getFrameIndex(window.name); //获取当前窗体索引
parent.layer.close(index); //执行关闭
}
</script>
<a id="choice" οnclick="setUserName('@item.USERNAME','@item.USERID')">@item.USERNAME</a>