假设我有一份晚餐清单。此列表将向用户显示位置,数据和其他一些相关信息。
由于有很多人参加,我想在每个晚餐上都有一个按钮,打开一个jquery对话框,显示将要参加的人。
到目前为止我所取得的成就:
在名单上的每一顿晚餐上,我都有以下标签
<label class="falselink" id="<%= Html.Encode(item.Id) %>">show attendence</label>
当有人点击标签时,我也有这个脚本打开对话框:
<script type="text/javascript">
$(function() {
$('#dialog').dialog({
autoOpen: false,
title: 'Attendence',
modal: true
});
$('.falselink').click(function() {
$('#dialog').dialog('open');
return false;
});
});
</script>
我还有以下包含对话框的div
<div id="dialog" >
<% Html.RenderAction("DinnerAttendence", new { id = 3 }); %>
</div>
如果我按照网址http://localhost/Dinner/DinnerAttendence/3运行, 事实上,如果我按下链接,它将显示与参加晚宴3的人的对话。
我唯一的问题是我如何将晚餐ID传递给RenderAction RouteValue?
感谢您的帮助
答案 0 :(得分:0)
我知道这个问题已经过时但无论如何我都会回答。
RenderAction似乎无法做到这一点。 如果你需要从javascript获得晚餐ID,那么你需要做一些脏事,比如在调用Url.Action方法时附加id:
$.get('@(Url.Action("DinnerAttendence", "Dinners"))/' + dinnerId,
function (data) { $("#dialog").append(data); });
如果有人知道更好的方式我会喜欢听到它。