为什么我能';无法从javascript访问我的模型对象 @使用Demo.Models @模型Demo.Models.MyClass @{ ViewBag.Title=“详细信息”; } 详细信息:@Html.DisplayFor(model=>model.Id) @DisplayNameFor(model=>model.Name) @DisplayFor(model=>model.Name) @DisplayNameFor(model=>model.Age) @DisplayFor(model=>model.Age)
@ActionLink(“返回列表”、“索引”) @节脚本{ $(文档).ready(函数(){ 警报(@Model.Id); }); }为什么我能';无法从javascript访问我的模型对象 @使用Demo.Models @模型Demo.Models.MyClass @{ ViewBag.Title=“详细信息”; } 详细信息:@Html.DisplayFor(model=>model.Id) @DisplayNameFor(model=>model.Name) @DisplayFor(model=>model.Name) @DisplayNameFor(model=>model.Age) @DisplayFor(model=>model.Age),javascript,asp.net-mvc,Javascript,Asp.net Mvc,@ActionLink(“返回列表”、“索引”) @节脚本{ $(文档).ready(函数(){ 警报(@Model.Id); }); } 使用此代码: @using Demo.Models @model Demo.Models.MyClass @{ ViewBag.Title = "Details"; } <div> <h4>Details: @Html.DisplayFor(model => model.Id)</h4>
使用此代码:
@using Demo.Models
@model Demo.Models.MyClass
@{
ViewBag.Title = "Details";
}
<div>
<h4>Details: @Html.DisplayFor(model => model.Id)</h4>
<hr />
<dl class="dl-horizontal">
<dt>
@Html.DisplayNameFor(model => model.Name)
</dt>
<dd>
@Html.DisplayFor(model => model.Name)
</dd>
<dt>
@Html.DisplayNameFor(model => model.Age)
</dt>
<dd>
@Html.DisplayFor(model => model.Age)
</dd>
</dl>
</div>
<p>
@Html.ActionLink("Back to List", "Index")
</p>
@section Scripts {
<script type="text/jscript">
$(document).ready(function() {
alert(@Model.Id);
});
</script>
}
$(文档).ready(函数(){
警报(@Html.Raw(Json.Encode(Model.Id));
});
您可能需要映射到JS。
例如:
var id=@Model.id;
您将能够使用Javascript var id在Javascript之前的所有内容都是对服务器的指令
@Model
是对传递给呈现视图的代码的模型的引用,该代码在服务器上发生
如果要访问模型的ID,必须在页面上的某个位置呈现它,很可能是JavaScript中的文字,或者是可以通过jQuery访问的HTML元素的值
<script type="text/jscript">
$(document).ready(function() {
alert(@Html.Raw(Json.Encode(Model.Id)));
});
</script>
<script>
var id = @Model.Id;
</script>