Asp.net MVC 选择索引已更改/Ajax.ActionLink

发布于 2024-11-11 16:39:36 字数 163 浏览 0 评论 0原文

我在 Asp.Net MVC 中有一个使用 Razor 语法的页面。在页面中,我有一个 DropDownList 和一个 DIV 部分,我想根据使用 Ajax.ActionLink 功能的组合框的选定值来替换 DIV 中的内容

有没有办法做到这一点?

谢谢马克

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?

Thanks

Mark

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

要走干脆点 2024-11-18 16:39:36

我宁愿使用表单而不是链接,因为它更适合您想要实现的目标:

@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>

以及相应的控制器操作:

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

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);
}
随心而道 2024-11-18 16:39:36

你可以使用jquery来调用你的ajax动作

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

mvc ajax动作会喜欢这样

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

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
  }
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文