我有一个MVC应用程序,它会显示一个弹出窗口模态窗口,用于在单击按钮时编辑某些数据。所有的机制似乎都有效。它会逐步完成所有。加载模态。如下所示的模型填充在Controller
中当我进入视图代码时,模型显然是填充的......所以它通过了很好......
所以我的困惑是为什么当模型加载时...所有的EditorFor字段都是空的。当模型没有并且控件绑定到模型属性时。
显然,我错过了一些东西......我只是不确定是什么......以下是我的部分视图中的代码...
@model Hybridinator.Domain.Entities.Database
<br />
<br />
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">×</span><span class="sr-only">Close</span></button>
<h4 class="modal-title" id="myModalLabel">Edit Database Info</h4>
</div>
<div class="modal-body">
@using (Html.BeginForm())
{
<div class="form-group">
<div id="databaselabel" >@Html.LabelFor(m => m.database, "Database")</div>
<div id="databaseedit" >@Html.EditorFor(m => m.database )</div>
</div>
<div class="form-group">
<div id="databaseserverlabel" >@Html.LabelFor(m => m.database_server, "Database Server")</div>
<div id="databaseserveredit" >@Html.EditorFor(m => m.database_server )</div>
</div>
<div class="form-group">
<div id="databaseusernamelabel" >@Html.LabelFor(m => m.database_username, "Database Username")</div>
<div id="databaseusernameedit" >@Html.EditorFor(m => m.database_username)</div>
</div>
<div class="form-group">
<div id="databasepasswordlabel" >@Html.LabelFor(m => m.database_password, "Database Password")</div>
<div id="databasepasswordedit" >@Html.EditorFor(m => m.database_password)</div>
</div>
<div class="form-group">
<div id="histdatabaselabel"> @Html.LabelFor(m => m.hist_database, "History Database")</div>
<div id="histdatabaseedit" >@Html.EditorFor(m => m.hist_database)</div>
</div>
<div class="form-group">
<div id="histdatabaseserverlabel"> @Html.LabelFor(m => m.hist_database_server, "History Database Server")</div>
<div id="histdatabaseserveredit">@Html.EditorFor(m => m.hist_database_server)</div>
</div>
<div class="form-group">
<div id="histdatabaseusernamelabel" >@Html.LabelFor(m => m.hist_database_username, "History Database Username")</div>
<div id="histdatabaseusernameedit" >@Html.EditorFor(m => m.hist_database_username)</div>
</div>
<div class="form-group">
<div id="histdatabasepasswordlabel" >@Html.LabelFor(m => m.hist_database_password, "History Database Password")</div>
<div id="histdatabasepasswordedit" >@Html.EditorFor(m => m.hist_database_password)</div>
</div>
}
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Cancel</button>
<button type="button" class="btn btn-primary">Submit</button>
</div>
这是模态加载
的索引中的代码<div class="modal fade" id="modalEditDBInfo" role="application" aria-labelledby="modalEditDBInfoLabel" aria-hidden="true">
<div class="modal-dialog">
<div class="modalEditDBInfoContent" style="background-color:white; border-radius:10px; box-shadow:10px;">
@Html.Partial("_EditDatabaseInfo")
</div>
</div>
</div>
调用JQuery脚本的按钮的代码
<a href="#EditDatabaseButton" class="btn btn-primary" onclick="editDatabaseInfo()">Edit</a>
和脚本的代码
<script type="text/javascript">
function editDatabaseInfo() {
var dbid = $('#database_pk').val();
alert('function values are ' + dbid);
$.ajax({
url: '@Url.Action("EditDatabaseInfo", "Database")',
type: 'GET',
cache: false,
data: { database_pk: dbid }
}).done(function (result) {
$('#modalEditDBInfoContent').html(result);
});
$('#modalEditDBInfo').modal('show');
}
</script>
最后是Modal加载后的图像..你不会预编辑任何编辑字段
答案 0 :(得分:1)
您的modalEditDBInfoContent没有id = modalEditDBInfoContent。它&#39;上课。
$('.modalEditDBInfoContent').html(result);