Javascript 带jersey的REST webservice jQuery客户端
我是jQuery新手,我正在尝试为我的web服务开发一个客户端。我试过一些简单的方法,只是为了测试,但仍然不起作用,尽管我觉得还可以 我的tomee/webapp文件夹中有jQuery库,还有html和javascript文件。如果我在javascript文件中编写一些非jQuery代码,它就会工作 我有以下代码: index.htmlJavascript 带jersey的REST webservice jQuery客户端,javascript,jquery,ajax,web-services,client,Javascript,Jquery,Ajax,Web Services,Client,我是jQuery新手,我正在尝试为我的web服务开发一个客户端。我试过一些简单的方法,只是为了测试,但仍然不起作用,尽管我觉得还可以 我的tomee/webapp文件夹中有jQuery库,还有html和javascript文件。如果我在javascript文件中编写一些非jQuery代码,它就会工作 我有以下代码: index.html <!DOCTYPE html SYSTEM "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dt
<!DOCTYPE html SYSTEM "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="client.js"></script>
</head>
<body>
<input type="button" id="getAllButton" value="Get all books" onclick="return getAllBooks()"/>
<div id="messageBox"></div>
</body>
</html>
问题是不会出现警报。如果编写纯javascript(我的意思是没有jQuery),则会出现警报 为什么不显示警报?有什么建议吗 谢谢大家!
Sorin让我们试着找出哪些有效,哪些无效;尝试将client.js更改为:
alert(1);
function getAllBooks() {
alert(2);
window.open(rootURL + '/books');
$.ajax({
dataType: 'application/xml',
type: 'GET',
url: rootURL + '/books',
success: function (data) {
alert(3);
},
error: function (data) {
alert(4);
}
});
}
如果看到警报#1(加载html页面时),则client.js路径正常。如果您看到alert#2(当您单击该按钮时),则至少该函数正在被调用
验证window.open()是否显示web服务应该显示的内容(即使是错误消息也会引导您抛出正确的路径)。当然,如果你看到alert#3或#4,那么你的问题就被它自己神秘地解决了。。。。有时会发生:-)
注意:如果您知道如何使用浏览器的javascript控制台,请使用console.log()而不是alert()进行调试 谢谢charlietfl的提示!他们帮我解决了这个问题
问题是它不知道rootURL是谁。我在一个例子中找到了rootURL,我认为这是jQuery中定义的东西。似乎不是。请解释症状。浏览器控制台中是否抛出错误?两个警报都会开火吗?AJAX的疑难解答有很多变量,仅仅提供代码并不能说明很多问题,问题是不会出现警报。这还不够详细。您必须在浏览器控制台中查找脚本错误,并检查请求本身以查看是否发出了请求。页面是否与脚本位于同一文件夹中?如果不是,则不会加载脚本。可以在控制台的“网络”选项卡中查看脚本是否正在加载线程…我不知道如何调试。。。
alert(1);
function getAllBooks() {
alert(2);
window.open(rootURL + '/books');
$.ajax({
dataType: 'application/xml',
type: 'GET',
url: rootURL + '/books',
success: function (data) {
alert(3);
},
error: function (data) {
alert(4);
}
});
}