代码改变世界

JAVASCRIPT - Post 数组 到 ASP.NET MVC 2 Controller using AJAX

2010-12-09 17:56  quanhb  阅读(727)  评论(0)    收藏  举报

本文转自:http://efreedom.com/Question/1-3821199/Post-Array-ASPNET-MVC-Controller-Using-AJAX

JAVASCRIPT - Post array to ASP.NET MVC 2 Controller using AJAX

Hello. There is known trouble with sending array to ASP.NET MVC controller. I've found a lot of solutions like that. Why don't use usual object instead array? It works good. Example of code:

    <script>
    $(function(){
        $('.asArray').click(function(){
            var array = Array();
            array[0] = 'Dima';
            array[1] = 'Ann';
            array[2] = 'John';
            $.post('/Home/Get', {data: array}, function(data){alert(data);});
        });
        $('.asObject').click(function(){ // works good
            var array = Object();
            array[0] = 'Dima';
            array[1] = 'Ann';
            array[2] = 'John';
            $.post('/Home/Get', {data: array}, function(data){alert(data);});
        });
    });
</script>
<div>
    <input type="button" class="asArray" value="asArray"/>
    <input type="button" class="asObject" value="asObject"/>

controller action:

public ActionResult Get(IEnumerable<string> data)
    {
        if (data == null)
            return Content("data == null");
        return Content("data = [" + data.Aggregate((agr, curr) => agr + ", " + curr) + "]");
    }