我很抱歉,如果這是一個騙局,但我一直沒能找到一個確切的解決方案,我的問題。從IFRAME發佈,並返回到部分在父母的視圖
目標: 上傳文件,做功,返回結果。容易嗎?
問題: 我一直在這工作了幾天沒有任何運氣。我試過XmlHttpRequest,但是由於瀏覽器的限制(無法擺脫逼迫終端用戶和客戶端使用IE10或更高版本),這似乎不是一種選擇。
我所花費的大部分時間都是通過iframe上傳的。我已經得到了上傳片的工作正常。我需要做的是在對文件進行處理之後,結果應該返回到父窗口和部分視圖。
----------------------Index--------------------
Partial View Data Entry----Partial View Results
-----Upload iframe----------Results from file--
這裏就是我有下面的代碼:
DataEntry.cshtml
<div>
...textboxes, radiobuttons, etc...
<iframe id="uploadFrame" class="seamless" frameborder="0" src='@Url.Action("UploadFile")'></iframe>
</div>
UploadFile.cshtml
<script type="text/javascript">
$(document).ready(function() {
$("#uploadFile").click(function() {
$("#field1").val(window.parent.document.getElementById("field1").value);
$("#field2").val(window.parent.document.getElementById("field2").value);
...other fields...
$("#fileForm").submit();
});
$("#file").change(function() {
if ($("#file").val() != "") {
$("#uploadFile").removeAttr("disabled");
}
else {
$("#uploadFile").attr("disabled", "disabled");
}
});
});
</script>
<form id="fileForm" action='@Url.Action("UploadFile")' method="post" enctype="multipart/form-data">
<div>
Please use this template (link) to upload a list of employees and dependents.
</div>
<div class="center">
<br />
<input type="hidden" id="field1" name="field1" />
<input type="hidden" id="field2" name="field2" />
<input type="file" id="file" name="file" /><br /><br />
<input type="button" disabled="disabled" id="uploadFile" name="uploadFile" value="Upload File" class="greenButton" />
</div>
</form>
HomeController.cs
public ActionResult UploadFile()
{
return View();
}
[HttpPost]
public ActionResult UploadFile(String field1, String field2, HttpPostedFileBase file)
{
...do work...
//return View("UploadFile", object);
//return View("Result", object);
//return ?
}
退貨部分是我卡住的地方。我能做些什麼來將對象返回到局部視圖,而不在iframe中加載局部視圖?
任何想法或至少在正確的方向點將不勝感激。即使是重複的鏈接!
Hatjhie,據我所知,局部視圖會刷新返回。我希望使用返回對象刷新它,但我不希望部分視圖顯示在iframe中,這是我所能完成的。你提供的鏈接似乎沒有涵蓋這一點,但也許我錯過了一些東西。 :) –
好的。感謝您的澄清。 Yeap,鏈接是以不同的方式進行上傳。也許,你分享你的答案?謝謝! – Hatjhie