我是ASP.NET MVC 3和Razor的新手。我想在一个视图中制作多个表单。所有表格(红色矩形)都将取决于我在" Jenis Registrasi"下拉(红色箭头)。有时很少有表格需要加载不同的模型。
如何很好地实现这一点?
对于无代表性的标题和问题,我们深表歉意。谢谢你指导我。 :d
答案 0 :(得分:0)
我有点把它扔在一起,但它类似于我在很多ajax情况下做的事情。我肯定会考虑一些逻辑。也许将blockUi添加到JavaScript中。
在您的客户端,您将拥有类似
的内容$('RegistrasiDropDown').change(function () {
$.get('@Url.Action("GetExtraFormFields")', { id: $('#RegistrasiDropDown').val() }, function (data) {
if (data.success == false) {
//Handle Error
});
} else {
$('#ExtraFormSection').html(data);
}
})
});
在你的控制器中,你会有类似的东西(在c#中),但概念在VB中是相同的
public ActionResult GetExtraFormFields(string id)
{
try
{
var registrationItem= GetRegistrationItemById(id);
if (condition1 == true) //Replace your own logic here.
{
var model = new ModelType1 {
Prop1 = "foo";
}
return PartialView("_PartialView1", model)
}
else if ()//// and so on
}
catch (Exception exception)
{
return return Json(new { success = false, message = exception.msg }, JsonRequestBehavior.AllowGet);
}
}