我有部分视图
这是代码
@model IEnumerable<SmartSolutions.Models.QuestionBlock>
@foreach (var item in Model) {
<div>
@Html.DisplayFor(modelItem => item.Question1)
</div>
}
这里是控制器的代码
public ActionResult Recording(int id)
{
/*var items = db.QuestionBlocks
.Where(x => x.Interview_Id == id)
.Select(x => x).ToList();*/
ApplicationDbContext db = new ApplicationDbContext();
return View();
}
public ActionResult QuestionBlock(int id) {
ApplicationDbContext db = new ApplicationDbContext();
var questionblocks = db.QuestionBlocks.Take(id);
return PartialView(questionblocks);
}
以下是我尝试显示PartialView的视图代码
<div class="inner-div4" style="background: #ffffff">
<div class="counter-one">
3/10
</div>
<div class="right-welcome-div2-borderless" style="background: #e5e5e5">
<div class="timer-div-one" id="countdown" style="height: 20px; width: 20px;">
</div>
<div class="counter-div">
</div>
<p>@Html.Label("Show", htmlAttributes: new { @class = "showList", @style= "cursor:pointer;", data_rows = 1 })</p>
<div id="questions">
</div>
这是AJAX调用
<script>
$('.showList').click(function (e) {
var rows_num = this.getAttribute("data-rows");
$.ajax({
type: "GET",
url: "/interwier/QuestionBlock",
data: { id: rows_num },
sucess: function (data) {
$("#questions").html(data);
},
error: function () {
alert("Smth wrong in controller");
}
});
});
我的问题&lt;当我单击<p>@Html.Label("Show", htmlAttributes: new { @class = "showList", @style= "cursor:pointer;", data_rows = 1 })</p>
时,我在网络控制台数据中看到了,但没有在View上看到。
答案 0 :(得分:2)
您的AJAX代码中有一个拼写错误:sucess
而不是success
。从本质上讲,目前您没有success
方法,因此返回的响应没有任何反应。
答案 1 :(得分:1)
我认为将参数名称 data_rows 更改为 id 。所以请试一试。
您方法中的简单更改。
public ActionResult QuestionBlock(int id) {
ApplicationDbContext db = new ApplicationDbContext();
var questionblocks = db.QuestionBlocks.Take(id);
return PartialView("Name_Of_PartialView",questionblocks);
}