我正在嘗試在我正在處理的項目中的輸入窗體上實現自動完成功能。我試圖使用jQuery來觸發對servlet的AJAX調用,並在輸入字段中添加了一個偵聽器來進行keyup。但是,它似乎從未輸入。我還添加了控制檯日誌以驗證它確實沒有被輸入,並且檢查控制檯也是空白的。從未輸入jQuery Keyup
我已經包含HTML如下:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE>Fabflix Home</TITLE>
<script type="text/javascript"
src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"</script>
<script type="text/javascript">
$(document).ready(function(){
$("#autoSearch").on("keyup", function() {
console.log("Entered!");
var data = $('#autoSearch').val();
$.ajax({
type: "POST",
url: "/FabflixP4/servlet/autocomplete",
data: data,
dataType: "xml",
success: function(data)
{
console.log("Success!");
}
});
});
});
</script>
</HEAD>
<BODY BGCOLOR="#FDF5E6">
<H1 ALIGN="CENTER">Test</H1>
<div align="CENTER">
<form action = "/FabflixP4/servlet/Movie">
Search: <INPUT TYPE="TEXT" NAME="title">
<input type="submit" id="autoSearch" value="Submit">
</form>
</div>
</BODY>
</HTML>
我是新來的兩個jQuery和AJAX想通有我丟失的東西。我花了幾個小時研究這個沒有用。作爲一個方面,這不是一個小的項目,不打算使用,性能並不重要。謝謝。
編輯1:添加腳本類型並移動到頭部,仍然不會被輸入。
快速瀏覽一下您的標記顯示了一些IR-規律,指定typr'腳本'標籤和移動它的'head'裏面,看看它的工作原理* * –
@約翰改變您的諮詢,還沒有被輸入並且沒有輸出到控制檯。 – Greiver
設置文本輸入的id屬性不提交按鈕 –