我正在使用来自webgrid的popup来编辑候选人的详细信息。当我第一次点击时,弹出窗口正在打开。当我第二次点击时它没有出现。
//脚本
function EditProduct(cid) {
var ph = $("#DivToAppendPartialView");
alert(cid);
ph.load("/CandidateDetails/EditCandidateDetails?candidateid=" + cid, function () {
alert('hi');
ph.dialog({
modal: true,
width: 560,
height: 560,
title: "Edit Candidate",
resizable: false
});
});
}
第二次点击时,警报('hi')正在激活但不是弹出窗口。
//网格列
grid.Column("", header: "Actions", canSort:false,
format: @<text>
@Html.Raw("<img src='/Images/edit-icon.png' alt='Edit' title='Edit' onclick='EditProduct(" + item.CDId + ")' />")
@Html.Raw("<img src='/Images/delete-icon.png' alt='Delete' title='Delete' onclick='DeleteProduct(" + item.CDId + ")' />")
</text>
//使用的脚本
<script src="@Url.Content("~/Scripts/jquery-1.4.4.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery-ui.min.js")" type="text/javascript"></script>
答案 0 :(得分:1)
此行创建一个对话框。默认情况下,autoOpen
属性为true,这就是它第一次打开的原因。
ph.dialog({
modal: true,
width: 560,
height: 560,
title: "Edit Candidate",
resizable: false
});
第二次调用时,对话框已经创建,因此不再运行。相反,创建一次对话框并使用open
方法打开它......
var ph = $("#DivToAppendPartialView");
ph.dialog({
modal: true,
width: 560,
height: 560,
title: "Edit Candidate",
resizable: false,
autoOpen: false // don't open on creation
});
function EditProduct(cid) {
ph.load("/CandidateDetails/EditCandidateDetails?candidateid=" + cid, function () {
ph.dialog('open');
});
}