我正在潜入ASP.NET MVC,我来自Ruby on Rails背景。我试图理解ASP MVC如何处理AJAX功能,并且在阅读了ASP网站上的一些教程之后,看起来他们实现AJAX功能的方式非常不同。 RoR处理AJAX功能的方式之一是返回ruby嵌入的JavaScript代码,一旦浏览器接收到该代码就会执行它。这使得实现AJAX非常简单而且非常有趣。 ASP.NET MVC可以返回JavaScript响应吗?ASP.NET MVC可以像Ruby on Rails一样返回JavaScript响应吗?
回答
只是用户 返回的JavaScript(脚本)
你将不得不在视图手动执行Java脚本
更具体地可以使控制器动作返回类型JavaScriptResult
什么你所谈论的在RoR世界中被称为JavaScript生成器,并且在ASP.NET MVC世界中没有等价物。这里有一个blog post,它演示了为ASP.NET MVC实现Rails-like RJS的基础知识(博客文章使用prototypejs
,但可以很容易地与jquery
配合使用)。
这里的另一种方法使用jQuery:
public ActionResult Foo()
{
return Json(new { prop1 = "value1", prop2 = "value2" });
}
和消费:
$.getJSON('/home/foo', function(result) {
// TODO: use javascript and work with the result here,
// the same way you would work in a RJS like template
// but using plain javascript
if (result.prop1 === 'value1') {
alert(result.prop2);
}
});
很棒的博客文章,谢谢。 – BeachRunnerFred 2010-10-20 16:45:53
嗨达林,有没有什么理由我想使用该博客文章中提供的方法,而不是使用@Andrey指出的内置方法?再次感谢! – BeachRunnerFred 2010-10-20 16:57:37
这取决于您的要求。 @Andrey提供的方法很好,但是您必须手动生成JavaScript,包括循环,ifs,...作为字符串,并将其传递给视图,而不是在真实模板中使用某些类似RJS的语言。所以你可能最终会写你的控制器,恕我直言,是坏的JavaScript。 – 2010-10-20 17:04:41
另外值得一看就是JsonResult延伸的ActionResult。我在进行某种数据的AJAX请求时通常会使用它。
- 1. HAML可以在Ruby on Rails中做一个“捕获”,就像render_to_string一样吗?
- 2. 当格式不被支持时,Ruby on Rails的respond_to可以返回一行吗?
- 3. Ruby on Rails&Javascript
- 4. 你可以在Ruby on Rails中手动“触发”回调吗?
- 5. JavaScript可以像Windows一样排序吗?
- 6. ASP.NET MVC在Ruby on Rails,CakePHP,et。人?
- 7. Ruby on Rails的ASP.NET MVC版本“link_to_unless_current”
- 8. 红宝石可以降价吗? Ruby on Rails应用程序
- 9. 可以将迁移应用于Ruby on Rails中的灯具吗?
- 10. 我可以使用Ruby on Rails渲染一个haml模板吗?
- 11. Ruby on Rails中的响应方法
- 12. ruby on rails * _url返回错误地址
- 13. Ruby on Rails - request.env ['HTTP_REFERER']返回无
- 14. 我们可以让ASP.NET MVC项目像ASP.NET 2.0一样即时编译吗?
- 15. Ruby on Rails:多has_many:通过可能吗?
- 16. ASP MVC vs Ruby on Rails
- 17. Ruby on Rails MVC问题
- 18. Ruby on Rails MVC说明
- 19. 响应式背景图像 - 引导jumbotron与Ruby on Rails
- 20. 是否有像Elgg这样的插件可用于Ruby on Rails?
- 21. 如何从Ruby on Rails辅助方法返回JavaScript?
- 22. 返回一个JavaScript的confirmbox响应Ruby程序,如果
- 23. Ruby on Rails新手,本地主机3000响应不可预知
- 24. 仅返回Ruby on Rails中的可用项目
- 25. 像asp.net一样编码PHP - 可能吗?
- 26. Ruby on Rails,Javascript检测
- 27. Javascript in partial(Ruby on Rails)
- 28. Ruby on Rails的,用JavaScript
- 29. Ruby on Rails - Javascript文件夹
- 30. 可以像java jar文件一样添加ruby gem/module吗?
谢谢,这看起来很简单,类似于我用过RoR的东西。这里有一篇我发现与JavaScriptResult类型相关的小博客文章,似乎值得一提http://devlicio.us/blogs/billy_mccafferty/archive/2009/02/07/beware-of-asp-net-mvc-javascriptresult.aspx – BeachRunnerFred 2010-10-20 16:59:11