各位高手您好!!
目前是用jsp來撰寫網頁
最近使用了JQuery AutoComplete這 plugin
基本單功能都能實現
但碰到了一個問
例如$(document).ready(function(){
var autocompleteOpts = {
url:'data.jsp'
}
$('#book').autocomplete(autocompleteOpts);
} 在data.jsp中可以用String key = request.getParameter("q");
取得client端所輸入的值
可是換了另一種形式
例如$(document).ready(function(){
$.getJSON("data.jsp?callback=?", function(data) {
........................省略
$('#book').autocomplete(autocompleteOpts);
....................... 省略 使用了getJSON之後~在client端輸入值~卻在data.jsp中取不到q的值
之後我修改了一下getJSON 這行$.getJSON("data.jsp?&q="+$('#book').val()+"&callback=?", function(data) { 在data.jsp的確是可以取得q值,但是
當我在client端輸入L這個key word的時候是沒反應的
之後在輸入一次相關L開頭的key word就會出現相關訊息
也就是說第一次沒反應第二次才會有動作
補充一下:
(1)
我是利用取得這個q值來當做sql語法的key word
"select * from tablename WHERE fieldnaem LIKE '"+key+"%'"
因為資料量相當大~所以想先把database的相關資料先取出~再將資料丟給getJSON
(此方式運作:第一次沒反應第二次才會有動作)
(2)
目前查到的資料大部份都是在後端直接以select * from tablebame
將整個資料取出然後附給getJSON~(若改成此方式目前的功能是可以正常運作的)
在此請教一下 若我希望以(1)的方式來運作
在以下部份code形式中該如何做變化呢??$(document).ready(function(){
$.getJSON("data.jsp?&q="+$('#book').val()+"&callback=?", function(data) {
........................省略
var autocompleteOpts={
data:name
........................省略
}
$('#book').autocomplete(autocompleteOpts);
});
}); 若有需要整段程式碼我將附上
謝謝您的回答
[ 本帖最後由 ericvirus 於 2009-10-31 12:40 編輯 ] |