场景:作业请求有单位,作业请求登记表中填写的字段根据单位不同。要实现此场景,应遵循什么方法?
我只有一张登记表。要申请的注册表单位中的字段,用户要申请的单位中的....etc,例如技术服务、生物医学...等单位可以在注册表中selected.If用户选择的技术服务,他们应该看到不同的字段填写。如果他选择生物医学,他们应该看到不同的领域。
问题中的更正
我们有一个应用程序,企业中的员工可以向技术单位报告电气故障、墙面粉刷、计算机硬件故障等问题,这些问题可以由技术单位进行监控。将问题转发到相关部门时要填写的字段根据问题将转发到的部门而有所不同。例如:当向计算机技术服务报告问题时,所请求的信息是不同的。如果要向生物医学单元报告问题,则必须输入不同的信息。为此,要求设计不同的表单,并要求用户在选择要报告的问题的支持单位后,从这些表单中填写相关信息。
在解释我的问题时,我可能向Rena解释错了。但结果是,rena实际上发布了一些代码,以便我可以从单个视图调用其他视图。我正在努力实现Rena所做的事情。
发布于 2021-09-03 09:50:36
下面是一个简单的演示:
型号:
public class job
{
public int Id { get; set; }
public string JobName { get; set; }
}
public class RegisterForm
{
public string JobName { get; set; }
public int Age { get; set; }
public string Name { get; set; }
}查看:
Index.cshtml(located in /Views/Home/Index.cshtml):
model RegisterForm
<form>
<div class="form-group">
<label asp-for="JobName" class="control-label"></label>
<select asp-for="JobName" asp-items="ViewBag.Jobs" class="form-control">
<option>Choose A Job</option>
</select>
<span asp-validation-for="JobName" class="text-danger"></span>
</div>
<div id="result"></div>
</form>
@section Scripts
{
<script>
$('#JobName').on('change', function () {
$.ajax({
url: '@Url.Action("ReturnPartial", "Home")',
type: 'GET',
data: { JobName: $("#JobName").val() },
success: function (res) {
$("#result").html(res); //add this...
},
error: function () {
}
});
});
</script>
}PartialView:
Biomedical.cshtml(located in /Views/Home/Biomedical.cshtml):
@model RegisterForm
<h1>Biomedical RegisterForm</h1>
<div class="form-group">
<label asp-for="Age" class="control-label"></label>
<input asp-for="Age" class="form-control" />
<span asp-validation-for="Age" class="text-danger"></span>
</div>Technical.cshtml(located in /Views/Home/Technical.cshtml):
@model RegisterForm
<h1>Technical RegisterForm</h1>
<div class="form-group">
<label asp-for="Name" class="control-label"></label>
<input asp-for="Name" class="form-control" />
<span asp-validation-for="Name" class="text-danger"></span>
</div>控制器:
public class HomeController : Controller
{
public IActionResult Index()
{
var jobs = new List<job>()
{
new job(){Id=1,JobName="Technical"},
new job(){Id=2,JobName="Biomedical"}
};
ViewBag.Jobs = new SelectList(jobs, "JobName", "JobName");
return View();
}
public IActionResult ReturnPartial(string JobName)
{
return PartialView(JobName);
}
}结果:

https://stackoverflow.com/questions/69028787
复制相似问题