我正在从索引页面打开一个弹出窗口,如下所示:
@Html.ActionLink(ButtonName, "CreateNode", "Node", new { ID = value.ID, }, new { @class = "openCreateDialog", data_dialog_title = ButtonName })
$(".openCreateDialog").unbind('click').bind("click", function (e) {
e.preventDefault();
$("<div></div>")
.addClass("dialog")
.attr("id", $(this))
.appendTo("body")
.dialog({
title: $(this).attr("data-dialog-title"),
close: function () { $(this).remove(); },
modal: true,
resizable: false,
height: 350,
width: 560,
left: 0,
buttons: {
"Save": function () {
$(".btnSave").trigger('click');
},
"Close": function () {
$(this).dialog("close");
}
}
})
.load(this.href);
});
从上面的代码中,我打开了一个 jquery 弹出窗口。
在弹出窗口中,我有以下代码
using (Html.BeginForm("SaveData", "Home", FormMethod.Post, new { enctype = "multipart/form-data", id = "NodeForm" }))
{
<input type="file" name="file"/>
<input type="text" name="text"/>
<input type="submit" id="btnSave" value="Save" class="btnSave" style="display: none" />}
在家庭控制器中,我将数据保存为
[HttpPost]
public ActionResult SaveData(FormCollection collections, HttpPostedFileBase file)
{
try
{
string sourceFilePath = Path.Combine("c:/Test", Path.GetFileName(file.FileName));
file.SaveAs(sourceFilePath);
return View();
}
catch (Exception ex)
{
return ex.Message;
}
}
在动作控制器中,如果成功我想返回“成功”消息,或者返回带有警报的“失败”消息,并与数据保持在同一个弹出窗口中。