0
您好我正在使用servlet我的第二個ajax程序。但它不工作。請幫助ajax與java不工作
index.html
<!DOCTYPE html>
<html>
<head>
<script>
function callServer(str){
alert(str);
var myxml = new XMLHttpRequest();
myxml.onreadystatechange = function {
if(myxml.readyState == 4 && myxml.status == 200)
document.getElementById("replay").innerHTML = myxml.responseText;
}
myxml.open("GET",""/suggest?query=str",true);
myxml.send();
}
</script>
</head>
<body>
<input id="enter" type="text" onkeyup="callServer(this.value)" />
<div id="replay"></div>
</body>
</html>
和我的servlet是這裏...
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@WebServlet("/suggest")
public class suggest extends HttpServlet {
public suggest() {
super();
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String [] values = {"sha","kla","hello","bun"};
String query = request.getParameter("query");
for (int i = 0; i < values.length; i++) {
if (values[i].equals(query))
response.getWriter().write("OK its available dude... "+query);
else response.getWriter().write("Sorry not yet... "+query);
}
}
}
在這裏,我認爲錯誤可能是在JS功能callserver。我已經檢查了每一行的警戒站點檢查,它工作正常,直到行 myxml.onreadystatechane =函數。警報一直工作到那裏。請幫助
'{功能',' 「」?/提示查詢= STR「'...你至少應該通過運行代碼http://jshint.com之前或之前張貼代碼與這樣的基本語法錯誤 –
或使用任何瀏覽器隨附的開發人員工具您只使用警報嗎woah。 – FlavorScape
考慮使用jQuery - 它更容易使用,更容易編寫,更多的跨平臺,查看jQuery的'.get'方法,你的生活將會變得更加容易 或者它可能就是那個ug ly雙引用@FabrícioMatté指出... –