@foreach(Model.Comments.Where中的var commentlist(x => x.CommentParentID == 0)) {
<div class="blog-comment">
<div class="comment-info">
<div class="user-info">
@if (commentlist.AllowViewingProfiles)
{
<a href="@Url.RouteUrl("CustomerProfile", new { id = commentlist.CustomerId })" class="username">@(commentlist.CustomerName)</a>
}
else
{
<span class="username">@(commentlist.CustomerName)</span>
}
<div class="avatar">
@if (!String.IsNullOrEmpty(commentlist.CustomerAvatarUrl))
{
<img src="@(commentlist.CustomerAvatarUrl)" class="avatar-img" title="avatar" alt="avatar" />
}
</div>
</div>
</div>
<div class="comment-content">
<div class="comment-time">
@T("Blog.Comments.CreatedOn"): <span class="stat-value">@commentlist.CreatedOn.ToString("g")</span>
<div class="buttons">
<input type="submit" id="reply" class="button-1 blog-post-add-comment-button" onclick="return showHide();" />
@Html.Hidden("CommentParentID",@commentlist.Id)
</div>
</div>
<div class="comment-body">
@Html.Raw(Nop.Core.Html.HtmlHelper.FormatText(commentlist.CommentText, false, true, false, false, false, false))
</div>
</div>
<div class="clear">
</div>
}
我正在使用@ Html.Hidden(“CommentParentID”,@ commentlist.Id)为ChildComment设置值CommentParentID(如果有)。
在下面的操作中,我想将CommentParentID作为参数传递。
@Html.ActionLink("Reply", "BlogCommentReply", "Blog", new { blogPostId = blogPostId, CommentParentID=CommentParentID,captchaValid = Model.AddNewComment.DisplayCaptcha }, null)
如何在Controller中检索此隐藏字段值? 或者我如何传递这个价值?
答案 0 :(得分:1)
如何在Controller中检索此隐藏字段值?
让控制器操作一个与隐藏字段同名的参数:
[HttpPost]
public ActionResult SomeAction(string[] commentParentID)
{
}
请注意,我在这里使用了一个集合,因为我可以看到你将这些隐藏的字段放在一个循环中,这意味着你将有多个具有相同名称的隐藏元素POST到服务器。
你也可以使用那些整数的整数数组。
答案 1 :(得分:0)
最简单的方法是通过像这样的ajax
控制器
public void Method1(string val1, string val2)
{
///do what you want with the values
}
Page / Ajax call
function PostData() {
$.ajax({
url: 'Home/Method1',
data: { val1: $('#hidden1').val(), val2: $('#hidden2').val()},
success: function (data) {
}
});
}