在Html.ActionLink中传递值

时间:2013-05-20 06:27:39

标签: asp.net-mvc jquery asp.net-mvc-2

我是MVC的新手,并且有新手对MVC的了解 我正在创建一个MVC应用程序,我在这个页面中显示了在特定时间发生的事件。 现在,当我从下拉列表中选择事件时,我会获得特定事件的详细信息。现在连同特定事件的描述,我需要获得人们为该特定事件输入的反馈 这是我的观点:

<div><a href="<%:Url.Action("ManagementHome","Home")%>">Home </a>>> Events</div>
<br /> 
<%:Html.LabelFor(m => m.Event)%> 
<%:Html.DropDownListFor(m => m.Event.SelectedValue, Model.Event.GetSelectList(), new {    id = "EventDropDown"})%>
<br /><br /> 
<div id="result" style="color: Green; border: 1px null transparent; ">
<%Html.RenderPartial("~/Views/PartialViews/EventsPartial.ascx"); %>
</div> 
<%:Ajax.ActionLink("view", "viewFeedback", "Home", new AjaxOptions { UpdateTargetId = "comments" }, new {eventid=Model.Event.SelectedValue})%>

<div id="comments" style="color: Green; border: 1px null transparent;">
<%Html.RenderPartial("~/Views/PartialViews/FeedbackPartial.ascx"); %>
</div> 

有人可以建议我如何在其ActionLink中传递该事件的ID? 提前致谢

3 个答案:

答案 0 :(得分:2)

您可以在参数中使用Html.ActionLink使用routeValues传递值。

例如:

// VB
@Html.ActionLink("Link Text", "MyAction", New With {.eventId = 1})

// C#
@Html.ActionLink("Link Text", "MyAction", new {eventId = 1})

可能会产生链接:

http://localhost/MyAction?eventId=1

答案 1 :(得分:0)

你必须使用ajax函数:

  $('youractionlinkid').click(function () {
          var id = $('#yourdropdownid').val();
         $.ajax({
             url: this.href,
             type: 'GET',
             data: { id:id },
             cache: false,
             success: function (result) {
                 //do some action here
             }
         });
         return false;
     });

答案 2 :(得分:0)

Razor也将以这种方式采用AJAX:

<div class="editorholder">
  @Html.DropDownListFor(model => model.Display_ID, new SelectList(Model._listAllDisplayViewModel.ListAllDisplayInfo, "DisplayID", "DisplayName"), "Select.....", new { @class = "form-control", @id = "DisplayID", @onchange = "DisplayInfo();" })
</div>




<div class="editor-field">
  <div id="DisplayView">
    @Html.Partial("_DisplayView", Model._displayViewModel)
  </div>
 </div>




function DisplayInfo() {
    $("#DisplayView").load('@(Url.Action("_DisplayView", "Display", null, Request.Url.Scheme))?id=' + $("#DisplayID").val());
};