2014-02-28 39 views
1

我正在嘗試在我正在處理的項目中的輸入窗體上實現自動完成功能。我試圖使用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:添加腳本類型並移動到頭部,仍然不會被輸入。

+0

快速瀏覽一下您的標記顯示了一些IR-規律,指定typr'腳本'標籤和移動它的'head'裏面,看看它的工作原理* * –

+0

@約翰改變您的諮詢,還沒有被輸入並且沒有輸出到控制檯。 – Greiver

+0

設置文本輸入的id屬性不提交按鈕 –

回答

3

您正在聽submit按鈕的keyup事件。您應該聽取text輸入的keyup事件。

$('input[name="title"]').on("keyup", function() { 
+0

完美,謝謝,它現在進入。 – Greiver