在cshtml页面上的Jquery.get()并发布.CS文件

时间:2014-12-09 20:20:33

标签: c# jquery asp.net-mvc-4 razor

我们在ASP.NET MVC 4.0项目中有一个cshtml(Example.cshtml)页面(由控制器调用)。

点击SendData上的按钮(Example.cshtml)后,cshtml页面会以查询字符串的形式发布数据。

这些数据应该由jQuery.get()获取,经过几个处理步骤后,处理后的数据应该被发送回.CS文件

我的问题是:如何使用$.get()从查询字符串中检索数据? 一旦jQuery.Get()检索到数据,如何在此之后继续,如何将数据发送回.cs文件?

以下是.get()用法:

     $('#CSSIdentifierforSenData').click(function() {
         $.ajax({
             url: sitePath +"Example.cshtml",
             type: 'GET',
             data: 'somedata',      // how to retrieve from query string?
             success:function(data) {
               //  
             } 
         });
     });    // End Click

1 个答案:

答案 0 :(得分:1)

您正在做的事情不是标准的ASP.NET MVC。

您应该从Controller请求发送回视图的文件内容。例如:

public class ExampleController : Controller 
{  
        public ActionResult Example() 
        { 
            return View();
        } 
}

View此处将引用Example.cshtml

在您的AJAX通话中,您应该请求它:

   $('#CSSIdentifierforSenData').click(function() {
         $.ajax({
             url: '@Url.Action("Example")',
             type: 'GET',
             success:function(data) {
               //  
             } 
         });
     });

您尝试从AJAX请求中获取的数据应在Controller图层中处理(我已为您添加了该图层)。您可以使用服务类来检索所需的数据,并通过强类型ViewModel将其传递给View。

AJAX成功功能中,您可以访问Example.cshtml变量中保存的data内容。 然后,您可以将其淡入页面的某个部分,例如使用jQuery

POST数据,您可以再次使用FORM或jQuery AJAX方法,但使用POST而不是GET并传递您想要的数据到服务器。你应该再次使用Controller来处理这种交互。