如何发送ajax请求来请求对asp.net MVC 4控制器的XML响应?

时间:2013-07-16 18:31:25

标签: c# javascript ajax asp.net-mvc

好的,所以我的asp.net MVC4控制器名为 Home 几乎是安静的,所以如果我在Firefox或IE中这样做

http://localhost:1193/Home/?serialcode=123456789123321

它优雅地显示了一个页面,其中包含使用上述序列码计算的代码,如82434234

现在,控制器支持返回XML数据,经过测试并使用C#代码。现在我陷入了最后一步......嗯...发送一个简单的ajax请求来获取代码。这就是我到目前为止所拥有的

                var xmlHttp;

                **//Problem 1: not sure what url should be like, given above Firefox
                // example ? Should the word Home , or index be in it?**

                var url = "index?serialcode=123456789123321";                    

                if (window.XMLHttpRequest) {
                    // code for IE7+, Firefox, Chrome, Opera, Safari
                    xmlhttp = new XMLHttpRequest();
                }
                else {
                    // code for IE6, IE5
                    xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
                }
                xml.dataType = "xml";

                **// Problem 2: this line doesn't do anything below**
                xmlHttp.open("GET", url , true);             

                xmlHttp.send(imei);

任何帮助非常感谢...谢谢:)

2 个答案:

答案 0 :(得分:1)

简化并使用jQuery:

$.ajax({
  url: '@Url.Action("Index", "Home")',
  type: 'GET',
  data: { serialcode: 123456789123321 },
  success: function(responseData) {
    // TODO:
  }
});

答案 1 :(得分:0)

使用Url.Action()获取网址。通过使用简单的jQuery.ajax()调用替换上面的代码来传递数据。