开发者

Asp.net MVC Selected Index Changed / Ajax.ActionLink

I have a page in Asp.Net MVC using the Razor syntax. In the page I have a DropDownList, and a DIV section that I would like to replace the content in the DIV depending on the selected value of the combobox using the Ajax.ActionLink functionality

Is there a way to do this?

Tha开发者_JAVA百科nks

Mark


I would rather use a form than a link as it is more adapted to what you are trying to achieve:

@using (Ajax.BeginForm(
    "Change", 
    "Home", 
    new AjaxOptions { UpdateTargetId = "result" }
))
{
    @Html.FropDownListFor(x => x.Foo, Model.Foos, "-- Select a foo --")
    <input type="submit" value="Change" />
}

<div id="result"></div>

And the corresponding controller action:

public ActionResult Change(string foo)
{
    string view = ... // select the partial based on the selected value
    return PartialView(view);
}


you can use jquery to call your ajax action

  function OnDddlChanged() {
    $.ajax({
        url: "controller/action/"+$("#SelectTagID").val(),
        dataType: 'html',
        type: 'Get',
        success: function (r) {
            $('#DivID').html(r);
        },
        error: function () {
            alert('Error');
        }
    });
}

mvc ajax action will like that

 public MvcHtmlString MyAction(string id)
{
  if(Request.IsAjaxRequest)
  {
    //return your html as MvcHtmlString
  }
}
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜