0
布局 - >查看 - >管窥ASP.NET MVC是否可以在局部视图中使用ajax.beginform?
在查看:
<div class="col-md-8">
@{Html.RenderPartial("_komentari", commentlist);}
<div class="gap gap-small"></div>
<div class="box bg-gray">
<h3>@Res.commentwrite_title</h3>
@using (Ajax.BeginForm("postcomment", new { propertyid = Model.PublicID }, new AjaxOptions { UpdateTargetId = "commentsarea", HttpMethod = "Post", InsertionMode = InsertionMode.Replace }, null))
{
<div class="row">
<div class="col-md-8">
<div class="form-group">
<label>@Res.commentwrite_content</label>
<textarea id="comment" name="comment" class="form-control" rows="6"></textarea>
</div>
<div class="form-group">
<input class="btn btn-primary" type="submit" value='@Res.commentwrite_btn' />
</div>
</div>
</div>
}
</div>
</div>
在局部视图:
<div id="commentsarea">
<ul class="booking-item-reviews list">
@if (Model != null)
{
foreach (Comment item in Model)
{
<li>
<div class="row">
<div class="col-md-2">
<div class="booking-item-review-person">
<a class="booking-item-review-person-avatar round" href="#">
<img src="/assets/img/70x70.png" alt="Image Alternative text" title="Bubbles" />
</a>
<p class="booking-item-review-person-name">
@if (item.UserId != null)
{
<a href='@Url.Action("details", "user", new { userid = item.User.PublicId })'>@item.User.Username</a>
}
else
{
<a href="#">Anonymous</a>
}
</p>
</div>
</div>
<div class="col-md-10">
<div class="booking-item-review-content">
<p>
@item.Content
</p>
<p class="text-small mt20">@item.DateOnMarket</p>
<p class="booking-item-review-rate">
@using (Ajax.BeginForm("reportcomment", new { comment = item.PublicId }, new AjaxOptions { UpdateTargetId = "reportscount", HttpMethod = "Post", InsertionMode = InsertionMode.Replace }, null))
{
<a id="submit_link" href="#">Spam?</a>
<a class="fa fa-thumbs-o-down box-icon-inline round" href="#"></a>
}
<b id="reportscount" class="text-color">@item.CommentReports.Count</b>
</p>
</div>
</div>
</div>
</li>
}
}
</ul>
</div>
<script>
$(function() {
$('a#submit_link').click(function() {
$(this).closest("form").submit();
});
});
</script>
查看
两个脚本阿贾克斯总是包含在布局中(我已经在使用Ajax也在其他页面上)。在View页面上,当我添加一条新评论时,它会添加到数据库中,并通过ajax显示更新的评论列表。一切正常。
管窥
但是,如果我想报告为垃圾邮件的评论,我必须单击局部视图(#submit_link)内部链接和报告之后,#reportscount部分里面,我想显示该评论的更新报告数量。 actionresults返回像Content(numberofreports.toString())那样的数字。它的工作原理,但我在空白页中获得号码?
非常感谢。
噢,谢谢!所以,我应该使用布局 - 视图 - 部分视图 - 部分视图?那可能吗? – user5618385