我目前工作的.NET下的MVC平臺的一個新的網站,我試圖通過iframe來實現異步用戶上傳的圖像。儘管我幾乎完成了我的任務,並且在IE 9中的任何其他瀏覽器都失敗並出現以下錯誤:Microsoft JScript runtime error: Access is denied.
它看起來像是一個安全問題。請允許我使用以下代碼片段來描述我的問題,其中包含以下評論: 1.我有一個帶有輸入文件的html表單,其可見性處於隱藏狀態。在表單中有一個輸入元素type="file"
和一個提交按鈕(也隱藏)。訪問被拒絕錯誤在IE瀏覽器,而文件上傳
<div class="brandLogo">
<p>@identity._RetailerLogo.Caption</p>
<div id="LogoContainer" class="imgLogo">
<img id ="CompanyLogo" src="@DefaultRetailerImage" alt="" title="@Model._ADD_LOGO_IMAGE">
</div>
<p class="txtR">
<a id="UploadLogo" href="#" style="position: absolute; left: -999em; top: -999em;">Upload
</a>
</p>
<form id="UploadForm"
action="@Url.Action("editLogo", "Profile")"
method="POST" enctype="multipart/form-data"
name="UploadForm"
target="UploadTarget"
style="position: absolute; left: -999em; top: -999em;">
<input name="UploadLogoFile" id="UploadLogoFile" type="file" onchange="clickUploadButton();" />
<input type="button" id="SubmitLogoForm" value="Save Image" />
</form>
<iframe id="UploadTarget" onload="UploadImage_Complete();" name="UploadTarget" style="position: absolute;
left: -999em; top: -999em;"></iframe>
HTML表單試圖通過JavaScript文件發佈到一個iframe。 form和iframe都在我的本地項目(asp.net mvc)下的同一個域中(我在localhost下運行)。
我使用的是在輸入元素上改變事件來捕獲用戶選擇的東西,並觸發提交與Ajax調用的形式。所以當我通過javascript調用時:
$("#formID").submit()
我得到一個訪問被拒絕的錯誤。
任何幫助,將不勝感激