将值从下拉列表传递给html actionlink mvc4 razor

时间:2013-08-20 18:54:21

标签: c# asp.net-mvc asp.net-mvc-3 razor

我正在尝试将值从下拉列表传递到现有链接,但似乎没有任何效果:

index.cshtml:

@Html.ActionLink("Download", "MyDownload", null, new { @class = "button" })  
@Html.DropDownList("schools", "-- All Schools --")  

在我的SchoolsController中:

public FileContentResult MyDownload(string school="")
{
    List1<>
    List2<>

    var vals = 
         from list1
         join list2
         from
         select new {
             };

    if(school ! ="")
    {
        vals.where(x.list2.schools==school).tolist(); **// I get this error: "Object reference not set to an instance of an object."**
    }    
}

我可以轻松地用其他语言做的事情,我发现学习C#MVC需要永远。

1 个答案:

答案 0 :(得分:2)

您可以使用jQuery监控下拉列表中的更改事件。现在,我不完全确定您是否尝试更改用于链接的文本或链接的实际href。下面我创建了一些代码来改变它们。

查看

$(document).ready(function () {
    $("#schools").change(function () {
        var selection = $("#schools").val();
        var link = $("#Download");

        //Change text
        link.text(selection);

        //Change href
        link.attr("href", "linkHref" + selection)
    });
});

它看起来像这样,等待你想要处理你的链接和下拉列表的选择。