MVC5重定向控制器动作

时间:2014-10-03 17:49:21

标签: jquery redirect controller asp.net-mvc-5

我是使用ASP.Net MVC5的新手。我需要对控制器进行Jquery调用,以返回传递单个参数的新视图。我可以看到很多似乎都参考MVC3和之前的例子,但是很难找到任何可以处理MVC4或MVC5的东西。我想要做的就是从input元素中获取一个值,将其传递给Controller ActionResult,然后打开一个新的View。

PageTwo是View,Home是控制器。

Code I尝试过(通过许多其他代码)通常使用404失败:

window.location.href =' @UrlAction(" PageTwo"," Home",new {id = imgId})' (其中imgId是变量,id是控制器动作参数)。

var url =' @ Html.Raw(Url.Action(" PageTwo"," Home",new {id = imgId})&#39 ;; window.location.href = url;

我还尝试过对控制器方法的标准Ajax调用。

我确定答案很简单......我无法找到它......

3 个答案:

答案 0 :(得分:0)

你可以这样做。您获得了img id并将其传递给jQuery $.post()

的方法

DEMO

<input type="text" value="2" class="img__id" />
<a href="/controller/action" class="click__me">click me</a>

$(document).on('click', function () {
    var $this = $(this),
        imgId = $('.img__id').val();

    $.post($this.attr('href'), { id: imgId });

    return false;
});

答案 1 :(得分:0)

你所做的一切都是围绕表格

包装输入
@using (Html.BeginForm())
{
    ...
}

并在控制器中重定向

return RedirectToAction("ActionName");

答案 2 :(得分:0)

试试这个我希望这会对你有所帮助

<script> 
      function setSelectedTestPlan(el) {
      window.open('/controller/action?img_id =" + img_id + "', '_blank');
    }
    </script>

<a onclick="setSelectedTestPlan(this);" href="javascript:void(0);">Click Me</a>