Добрый день!
У меня есть Index View
, где, когда пользователь нажимает на кнопку из таблицы, появляется модал с другим Html.EditorFor
.Первые два Html.EditorFor
будут заполнены на основе выбранного значения в таблице, в то время как другие Html.EditorFor
в фокусе покажут другой модал, содержащий данные.
Таким образом, в основном это Вид с модалом внутри модального .
Проблема заключается в том, что когда я нажимаю кнопку «Выбрать» на дочернем модале, он должен заполнить Html.EditorFor
в родительском модале, но в результате происходит переход к представлению родительской модальной бритвы и к ранее заполненномуданные теперь удалены.Я хотел только заполнить родительский модал Html.EditorFor
значением из дочернего модала.
Этот является примером видео кода.
РОДИТЕЛЬСКИЙ МОДАЛЬ (DropAppliPopup)
<div class="modal-body">
@using (Html.BeginForm())
{
@Html.AntiForgeryToken()
<div class="panel panel-primary">
<div class="panel-heading"><h4>PETITIONER INFORMATION</h4></div>
<div class="panel-body">
<div class="form-group">
@Html.LabelFor(model => model.petitioner_name, htmlAttributes: new { @class = "control-label" })
@Html.EditorFor(model => model.petitioner_name, new { htmlAttributes = new { @class = "form-control", @readonly = "readonly", @Value = @ViewBag.Petname, placeholder = @Html.DisplayNameFor(m => m.petitioner_name), @id = "petname" } })
@Html.ValidationMessageFor(model => model.petitioner_name, "", new { @class = "text-danger" })
</div>
<div class="form-group">
@Html.LabelFor(model => model.petitioner_address, htmlAttributes: new { @class = "control-label" })
@Html.EditorFor(model => model.petitioner_address, new { htmlAttributes = new { @class = "form-control", @readonly = "readonly", @Value = @ViewBag.Petaddress, placeholder = @Html.DisplayNameFor(m => m.petitioner_address), @id = "petaddress" } })
@Html.ValidationMessageFor(model => model.petitioner_address, "", new { @class = "text-danger" })
</div>
<div class="panel panel-primary">
<div class="panel-heading"><h4>PETITIONEE INFORMATION</h4></div>
<div class="panel-body">
<div class="form-group">
@Html.LabelFor(model => model.operator_name, htmlAttributes: new { @class = "control-label" })
@Html.EditorFor(model => model.operator_name, new { htmlAttributes = new { @class = "form-control", @Value = @ViewBag.OName, placeholder = @Html.DisplayNameFor(m => m.operator_name), @id = "petname", onclick = "ClickTextbox()" } })
@Html.ValidationMessageFor(model => model.operator_name, "", new { @class = "text-danger" })
</div>
<div class="form-group">
@Html.LabelFor(model => model.operator_address, htmlAttributes: new { @class = "control-label" })
@Html.EditorFor(model => model.operator_address, new { htmlAttributes = new { @class = "form-control", @readonly = "readonly", placeholder = @Html.DisplayNameFor(m => m.operator_address), @id = "petaddress" } })
@Html.ValidationMessageFor(model => model.operator_address, "", new { @class = "text-danger" })
</div>
}
</div>
</div>
РЕБЕНОК МОДАЛЬНЫЙ
<div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" onclick = "CloseModal()" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
<h4 class="modal-title" id="myModalLabel">
Modal title
</h4>
</div>
<div class="modal-body">
@{ Html.RenderAction("PayerList2"); }
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" onclick = "CloseModal()">
Close
</button>
</div>
</div>
</div>
</div>
PayerList2 Частичное представление
@foreach (var item in Model)
{
<tr>
<td>
<a href="@Url.Action("DropAppliPopup","Dropped",new { opname=@item.operator_name, opmotor=@item.motor_no });">Select</a>
</td>
<td>
@Html.DisplayFor(modelItem => item.franchise_no)
</td>
<td>
@Html.DisplayFor(modelItem => item.motor_no)
</td>
<td>
@Html.DisplayFor(modelItem => item.motor_id)
</td>
<td>
@Html.DisplayFor(modelItem => item.operator_id)
</td>
<td>
@Html.DisplayFor(modelItem => item.operator_name)
</td>
<td>
@Html.DisplayFor(modelItem => item.for_year)
</td>
</tr>
}
КОНТРОЛЛЕР
public ActionResult DropAppliPopup(string Objid, string Petname, string Petaddress, string opname, string opmotor)
{
ViewBag.Year = new SelectList(db.tbl_Year.OrderByDescending(x => x.year), "year", "year");
ViewBag.DrpReason = new SelectList(db.tbl_DroppingReason, "id", "Reason");
ViewBag.Petname = Petname;
ViewBag.Petaddress = Petaddress;
ViewBag.Petid = Objid;
ViewBag.OName = opname;
ViewBag.OMotor = opmotor;
return PartialView("DropAppliPopup");
}
СКРИПТ
function ClickTextbox() {
$('#myModal').modal('show');
$("#myModal").modal({ backdrop: "static" });
$("#myModal").modal({ keyboard: false });
$('#myModal').on('shown.bs.modal', function () {
$('#txtUserName').focus();
});
};