在MVC控制器动作中返回结果时执行javascript函数

时间:2011-04-28 13:31:05

标签: javascript asp.net-mvc-2

我遇到以下情况:页面上有一个项目列表。每个项目都有一个href,可以将其重定向到所需的控制器和操作,即当填充列表时,每个项目的href都设置为/Controller/Action/Parameter。因此,这不是一个AJAX帖子,它只是在点击列表中的项目时重定向(所以不幸的是没有onSuccess)。

然后,相应的控制器操作将从存储库中检索响应。现在我需要在一个弹出当前页面的对话框中显示响应结果。

我目前使用javascript实现了一个解决方案:function ShowDialog(data)。这将显示对话框并绑定数据。

我一直在努力找到一种方法来在我的控制器操作中返回一个JavaScript结果,该操作将调用ShowDialog。这是要走的路吗?我可以调用这样的javascript函数,返回JavaScript(someScript)吗?

1 个答案:

答案 0 :(得分:3)

你可能会有更好的运气jQuery AJAX request。将click事件绑定到链接,如下所示:

$(a.myLink).click(function(){
   $.ajax($(this).attr('href'), {
      success: function(data){
         showDialog(data);
      },
      'datatype': 'html'
   })
});

这要求您的链接有一个类myLink,但您可以以任何方式选择链接。