C# 删除编辑表单中的图像选项
我想删除编辑表单中的图像并显示上载文件选项。由于我使用多个表单的选项卡窗格,如何使用Ajax实现这一点 这是我的密码 Biodata.cshtmlC# 删除编辑表单中的图像选项,c#,ajax,asp.net-core,razor-pages,delete-file,C#,Ajax,Asp.net Core,Razor Pages,Delete File,我想删除编辑表单中的图像并显示上载文件选项。由于我使用多个表单的选项卡窗格,如何使用Ajax实现这一点 这是我的密码 Biodata.cshtml <div class="form-group"> <label class="control-label-staff"><b>Photo</b></label> @if (Model.Im
<div class="form-group">
<label class="control-label-staff"><b>Photo</b></label>
@if (Model.ImageFiles != null)
{
foreach (var item in Model.ImageFiles)
{
if (item.Name.Substring(0, 2) == "IM")
{
<span class="control-label-staff">
<img src="~/Documents/EmployeeAttachments/@Request.Query["EmpID"].ToString()/@item.Name" width="70px" height="70px" />
</span><br/>
<a asp-page-handler="RemoveImage" data-ajax="true" data-ajax-method="post" data-ajax-complete="RemoveImageCompleted">Delete</a>
}
}
}
@if (Model.ImageFiles == null)
{
<input type="file" asp-for="StaffPhoto" class="form-control-staff" accept="image/*" style="border:1px solid white;" />
}
</div>
这是我在BioData.cshtml.cs中的asp页面处理程序方法
public async Task<IActionResult> OnPostRemoveImageAsync()
{
string filename = Request.Form["filename"];
if (filename != null)
{
var Folder = StaffBioData.EmpID.ToString();
string filedel = Path.Combine(_env.WebRootPath, "Documents/EmployeeAttachments", Folder, filename);
FileInfo fi = new FileInfo(filedel);
if (fi != null)
{
System.IO.File.Delete(filedel);
fi.Delete();
}
}
return new OkResult();
}
PostRemoveImageAsync()上的公共异步任务
{
字符串filename=Request.Form[“filename”];
如果(文件名!=null)
{
var Folder=StaffBioData.EmpID.ToString();
字符串filedel=Path.Combine(_env.WebRootPath,“Documents/EmployeeAttachments”,文件夹,文件名);
FileInfo fi=新的FileInfo(filedel);
如果(fi!=null)
{
System.IO.File.Delete(filedel);
fi.删除();
}
}
返回新的OkResult();
}
任何帮助都将不胜感激。谢谢。链接是GET请求。你不能通过链接发帖;这就是表格的用途。你需要一些类似的东西:
@if (Model.ImageFiles != null)
{
foreach (var item in Model.ImageFiles)
{
if (item.Name.Substring(0, 2) == "IM")
{
@*<a asp-page-handler="RemoveImage" data-ajax="true" data-ajax-method="post" data-ajax-complete="RemoveImageCompleted">Delete</a>*@
<form method="post" asp-page-handler="RemoveImage" data-ajax="true" data-ajax-method="post" data-ajax-complete="RemoveImageCompleted">
<input type="submit" value="delete" />
</form>
}
}
}
@if(Model.ImageFiles!=null)
{
foreach(Model.ImageFiles中的var项)
{
if(item.Name.Substring(0,2)=“IM”)
{
@*删除*@
}
}
}
链接是GET请求。你不能通过链接发帖;这就是表格的用途。你需要一些类似的东西:
@if (Model.ImageFiles != null)
{
foreach (var item in Model.ImageFiles)
{
if (item.Name.Substring(0, 2) == "IM")
{
@*<a asp-page-handler="RemoveImage" data-ajax="true" data-ajax-method="post" data-ajax-complete="RemoveImageCompleted">Delete</a>*@
<form method="post" asp-page-handler="RemoveImage" data-ajax="true" data-ajax-method="post" data-ajax-complete="RemoveImageCompleted">
<input type="submit" value="delete" />
</form>
}
}
}
@if(Model.ImageFiles!=null)
{
foreach(Model.ImageFiles中的var项)
{
if(item.Name.Substring(0,2)=“IM”)
{
@*删除*@
}
}
}
Hi@Teena,有更新吗?Hi@Teena,有更新吗?Hi Rena,很抱歉我的回复太晚了。我能用锚定标签代替表格吗?Hi Rena,很抱歉我的回复太晚了。我能用锚定标签代替表格吗?