返回列表 發帖
wmh,您好,我使用jquery autocomplete的時候碰到了一點問題。

代碼如下:


<link rel="stylesheet" href="/5xun5mi/css/jquery.autocomplete.css" type="text/css"></link>
                <script src="http://www.google.com/jsapi" ></script>  
                <script language="javascript" type="text/javascript" >  
                        google.load("jquery", "1");
                </script>
                <script type="text/javascript" src="/5xun5mi/js/jquery.autocomplete.js" defer="defer" charset="GBK"></script>
               


<script language="javascript" type="text/javascript" charset=GBK>
     $("#searchtext").autocomplete("/5xun5mi/jsp/get_tip_data.jsp");
</script>


IE中運行時,總是提示紅色標注的哪行有錯,錯誤信息是:對象不支持此屬性或方法

然而在Firefox中運行是正常的,其錯誤控制台也沒有任何錯誤信息。

望wmh指教,謝謝!

TOP

原帖由 wmh 於 2009-7-20 21:02 發表
把 defer="defer" 刪掉應該就可以囉。因為在 IE 遇到 defer="defer"  會先繼續往下執行,當執行到那一行的時候,autocomplete 這個 function 都還未載入完成,所以會出現這個訊息。 ...


非常感謝wmh,確實是這個原因造成的!
我之所以加那個defer屬性,是由於之前ie無法打開該站點信息。。
再次感謝~

TOP

還有個問題就是:

<input name="searchtext" type="text" class="input_search"
                                                        id="searchtext" maxlength="25" />
                                                <script language="javascript" type="text/javascript" charset=GBK>
                                                        $("#searchtext").autocomplete("get_tip_data.jsp");
                                                </script>

在get_tip_data.jsp中使用如下代碼
String searchtext = request.getParameter("searchtext");

获取的总是null,不知道爲什麽?

如果我使用 String searchtext = request.getParameter("q");
則獲取的是:searchtext ===  ???

注:我輸入的是中文

謝謝回覆!

[ 本帖最後由 niplover 於 2009-7-20 22:20 編輯 ]

TOP

原帖由 niplover 於 2009-7-20 22:09 發表
還有個問題就是:


                                               
                                                        $("#searchtext").autocomplete("get_tip_data.jsp");
                                               

在get_tip_data.jsp中使用如下代碼
String searchtext = request.getParameter("searchtext");

获取的总是null,不知道 ...


解決了,用escape函數,谢谢wmh!

TOP

wmh,我還有個問題就是:

當我輸入的時候,autocomplete是動態獲取到input中的值,該參數是q, 但能否動態獲取多個參數呢?  比如: 我input後面跟了一組單選框(book,author),我如何將選中的值(比如author)也能動態的傳入autocomplete呢? 聽說有個extraParams的東西,但不清楚何如使用?
望指教~ 謝謝!

TOP

嗯,好的,謝謝wmh,等我晚上回家去試試~

TOP

原帖由 wmh 於 2009-7-22 13:03 發表
根據官網的說明, extraParams 的用法如下:

$("#states").autocomplete(url, {
   extraParams: {
       country: function() { return $("#country").val(); }
   }
});


如上,可以帶入額外的 country 參數,是抓目前 ...


嗯,可以的,謝謝wmh! 以後得學會自己先看官方doc,解決不了在問,嘿~

TOP

wmh,再次請教~

如何才能讓autocomplete在使用方向鍵選中下拉列表中的某項時,input中同時也是這個值(像baidu一樣),而不是只能通過回車或單擊選中項使input為該值。。。

謝謝回覆!~

[ 本帖最後由 niplover 於 2009-7-26 14:57 編輯 ]

TOP

非常感謝wmh~  晚上回去試試~

TOP

原帖由 wmh 於 2009-7-26 20:02 發表
有個 autoFill 的屬性設定為 true 就可以囉

http://docs.jquery.com/Plugins/A ... #url_or_dataoptions


我昨天晚上回去試用了下,將autoFill的屬性設定為true,結果是這樣的:


盤龍
狂龍
.
.
.

注:第一行為input,下麵是下拉列表,效果也就是如圖:   即:  input匹配第一行符合的記錄,自動去填充下拉列表第一行的在減去input字串長度的後一部份字符串(比如:input為龍, 下拉列表第一行為 盤龍, 盤龍長2,減去input的長1,還剩1,也就是說 需要在input后補齊的是盤龍的“龍”)。  不知道我這樣講清楚了沒?。。。

還有就是在下拉列表中用方向鍵選中項時,input不發生改變。。。

望指教~  非常感謝~!

TOP

返回列表 回復 發帖