我使用HtmlHelper
在index.cshtml中有一个MVC3 Razor表单。它可以工作,但是我想用AjaxHelper
用Ajax表单替换它(注意:我对Ajax / jQuery仍然不熟悉)。它失败。我的问题:
这是我的index.cshtml文件。我对Ajax的试用在MVC3表单下面进行了注释。
<script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery-1.5.1.js")" type="text/javascript"></script>
@using ( Html.BeginForm("UploadFile", "Home", FormMethod.Post, new
{
enctype = "multipart/form-data"
}) )
{
@Html.ValidationSummary(true)
<fieldset>
<legend>Select a file</legend>
<input type="file" id="fileupload" name="fileuploadname" />
<p>
<input type="submit" value="Upload" id="upload" onclick="javascript:document.getElementById('upload').disabled=true; document.getElementById('upload').value='Uploading...'" />
</p>
</fieldset>
}
@* @using ( Ajax.BeginForm("UploadFile", "Home",
new AjaxOptions
{
InsertionMode = InsertionMode.Replace,
HttpMethod = "POST"
}) )
{
<input type="file" id="fileupload" name="fileuploadname" />
<p>
<input type="submit" value="Upload" id="upload" onclick="javascript:document.getElementById('upload').disabled=true; document.getElementById('upload').value='Uploading...'" />
</p>
}
*@
提前谢谢。
答案 0 :(得分:1)
您无法使用Ajax上传文件。至少不是直接的。
当然few plugins可以为您提供帮助,但它们会在AjaxHelper
范围之外进行调整。这只是意味着你必须弄清楚jQuery ,这也是一件好事。这是一个简单而小巧的库,在熟悉它的同时,你很可能会偏离AjaxHelper
,而只是使用jQuery(HtmlHelper
)。