解决方法
jQuery被设计为在浏览器环境中运行 – 所以这是一个带有DOM的环境,有
JavaScript支持(显然)等等.
要从MS sql Server检索数据,您需要访问数据库驱动程序并访问服务器.浏览器很少有这两件事,即使他们这样做,你通常也不希望让两者直接对话.
相反,您通常采用的方法是让基于浏览器的代码与中间层服务器(Web服务器,因为浏览器善于与他们交谈)进行通信,然后可以访问数据库.有几个原因:
>它为您提供了一个位置(浏览器和数据库之间的服务器)来应用安全性,守门,限制,监控等.
>它可以防止将数据库代码和结构暴露给最终用户(因为任何想要阅读它的人都可以阅读基于浏览器的JavaScript代码).
>从浏览器环境访问数据库驱动程序非常棘手,需要非标准的东西,如IE的ActiveXObject,它们并不存在于所有浏览器中,即使在它们存在的浏览器上也会触发安全警告.
如何让浏览器与服务器通信取决于你想要做什么,但现代的做法是使用ajax,它对于异步JavaScript和XML来说(有点伪装). (现在人们使用它比XML更多; JSON是一种更常见的数据表示法.)
因此,例如,您可能希望在按钮单击时填写一些HTML.在基于浏览器的代码中,您可以点击按钮点击:
$("#theButton").click(handleButtonClick);
你有那个按钮向服务器发送请求.如果请求是幂等的(你总是得到相同的数据),你发送一个GET;否则,你发送一个POST:
function handleButtonClick() { $.ajax({ url: "/path/to/server/resource",type: "GET",data: {articleId: 27},success: function(data) { /* ...use the data to fill in some HTML elements... */ },error: function() { /* ...show an error... */ } }); }
在服务器上,/ path / to / server / resource中的页面将执行必要的工作,以验证应该满足请求,连接到数据库,查询(或更新)信息,并格式化响应以发送回客户端.
显然,以上是对你如何做到这一点的一个非常非常非常简洁的描述,但希望它能够为你设定阶段并让你知道如何进入下一步.