C# 具有部分视图的MVC模式,不预先为具有模型绑定的控件设置EditorFor
我有一个MVC应用程序,当点击按钮时,它会显示一个弹出模式窗口来编辑一些数据。所有的机械装置似乎都能工作。一切都很顺利。加载模态。如下所示的模型填充在控制器中 当我进入视图代码时,模型被清楚地填充了…所以它通过的很好 所以我的困惑是,为什么当模型加载时..所有的EditorFor字段都是空的./当模型不是空的并且控件绑定到模型属性时 很明显我错过了什么…我只是不知道 这是我的局部视图中的代码C# 具有部分视图的MVC模式,不预先为具有模型绑定的控件设置EditorFor,c#,jquery,.net,asp.net-mvc,twitter-bootstrap,C#,Jquery,.net,Asp.net Mvc,Twitter Bootstrap,我有一个MVC应用程序,当点击按钮时,它会显示一个弹出模式窗口来编辑一些数据。所有的机械装置似乎都能工作。一切都很顺利。加载模态。如下所示的模型填充在控制器中 当我进入视图代码时,模型被清楚地填充了…所以它通过的很好 所以我的困惑是,为什么当模型加载时..所有的EditorFor字段都是空的./当模型不是空的并且控件绑定到模型属性时 很明显我错过了什么…我只是不知道 这是我的局部视图中的代码 @model Hybridinator.Domain.Entities.Database <b
@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>
@model Hybridinator.Domain.Entities.Database
&时代;接近
编辑数据库信息
@使用(Html.BeginForm())
{
@LabelFor(m=>m.database,“数据库”)
@EditorFor(m=>m.database)
@LabelFor(m=>m.database_服务器,“数据库服务器”)
@EditorFor(m=>m.database_服务器)
@LabelFor(m=>m.database_用户名,“数据库用户名”)
@EditorFor(m=>m.database\u用户名)
@LabelFor(m=>m.database_password,“数据库密码”)
@EditorFor(m=>m.database\u密码)
@LabelFor(m=>m.hist_数据库,“历史数据库”)
@EditorFor(m=>m.hist_数据库)
@LabelFor(m=>m.hist_数据库服务器,“历史数据库服务器”)
@EditorFor(m=>m.hist_数据库_服务器)
@LabelFor(m=>m.hist_数据库_用户名,“历史数据库用户名”)
@EditorFor(m=>m.hist\u数据库\u用户名)
@LabelFor(m=>m.hist_数据库密码,“历史数据库密码”)
@EditorFor(m=>m.hist\u数据库\u密码)
}
取消
提交
这是索引中的代码,模态荷载
<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>
@Html.Partial(“\u EditDatabaseInfo”)
调用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>
函数editDatabaseInfo(){
var dbid=$('#database_pk').val();
警报('函数值为'+dbid');
$.ajax({
url:'@url.Action(“EditDatabaseInfo”,“Database”),
键入:“GET”,
cache:false,
数据:{database_pk:dbid}
}).完成(功能(结果){
$('#modaleditdinfocontent').html(结果);
});
$('#modalEditDBInfo').modal('show');
}
最后是模态加载后的图像..您不会看到任何编辑字段被预填充
您的modalEditDBInfoContent没有id=modalEditDBInfoContent。这是我的班级
$('.modalEditDBInfoContent').html(result);
Hybridinator.Domain.Entities.Database
中是否设置了任何数据注释?就是这样..好奇...$('.modalEditDBInfoContent').html(结果)之间有什么区别;和$('#modaleditdinfocontent').html(结果);我对jqureyThe有点陌生,“.”意味着一个元素有那个css类。“#”表示匹配该id。