Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery AJAX/JSON与服务器端控件_Jquery_Ajax_Server Side Scripting - Fatal编程技术网

Jquery AJAX/JSON与服务器端控件

Jquery AJAX/JSON与服务器端控件,jquery,ajax,server-side-scripting,Jquery,Ajax,Server Side Scripting,我目前正在使用jQuery和ASP.NET(C#)开发一个单页应用程序。下图说明了我当前的解决方案实施方法: (1) 用户与网页交互,请求数据,触发JQuery事件 (2) AJAX向代码隐藏发送请求 (3) 代码隐藏查询数据库中请求的数据 (4) 数据库返回查询结果 (5) 代码隐藏将结果格式化为JSON文件,并将其发送回浏览器 (6) JQuery通过JSON文件解析并更新视图 我一直在阅读如何使用jqueryajax请求调用代码隐藏方法,并得出了一个结论,我想在这里验证一下。似乎通过将.

我目前正在使用jQuery和ASP.NET(C#)开发一个单页应用程序。下图说明了我当前的解决方案实施方法:

(1) 用户与网页交互,请求数据,触发JQuery事件

(2) AJAX向代码隐藏发送请求

(3) 代码隐藏查询数据库中请求的数据

(4) 数据库返回查询结果

(5) 代码隐藏将结果格式化为JSON文件,并将其发送回浏览器

(6) JQuery通过JSON文件解析并更新视图

我一直在阅读如何使用jqueryajax请求调用代码隐藏方法,并得出了一个结论,我想在这里验证一下。似乎通过将.html文件替换为.aspx文件,那些配置为用作服务器端控件的元素可以在代码隐藏(服务器)中直接操作。起初,这似乎比我的方法更可取,因为它将不再需要创建JSON文件,而必须通过浏览器更新页面(即:数据检索过程中少了一步)。然而,如果我采取这种替代方法,我的解决方案还会被视为SPA吗?即:隐藏的服务器端代码是更新浏览器中的现有页面,还是生成新页面并将其发送回浏览器。如果前者为真,那么我将使用服务器端控件,否则我将继续使用上述方法


(我在WebMeavest.StasExchange Engcom上发布了这个问题,但被告知它偏离主题)

是否服务器端代码在浏览器中更新现有页面,或者它生成一个新页面并将其发送回浏览器“取决于您认为是什么”页面。请注意,服务器对ajax请求的响应与对html请求的响应没有任何区别,只是它们可能会或可能不会为ajax请求返回html。Ajax请求实际上只是一个HTTP请求,与请求的索引XHTML.HTMLL没有什么不同。请考虑包含一个充当服务器端控件的按钮的ASPX页面。单击此按钮时,会将一些文本打印到空元素上。当用户单击按钮,服务器做出响应时,服务器是向浏览器发送新页面,还是更新现有页面(很像javascript/jquery如何更新现有页面,而不是生成新页面)?:同样,我认为您误用了“页面”这个词。通常,“单页应用程序”(single page application,SPA)只是指浏览器不刷新,所有与服务器的通信都是通过ajax完成的。ajax请求到达的路径与确定应用程序是否为SPA无关。在你的情况下,你把所有的路由都称为“页面”。你能解释一下“路由”是什么意思吗?路由、端点、服务器页面,随便你怎么称呼它。它不是真正意义上的网页,除非浏览器呈现它。