返回列表 發帖
本帖最後由 WILLIAMer 於 2010-2-9 18:10 編輯

我的main page一共include header,left,footer三塊
我剛把left跟footer拿掉發現就可以了...
表示我得等所有的頁面皆載入才行

本來我只有在header加入
$(window.parent.document).ready(function(){
                $(document).ready(function(){
                        $("#Keyword").autocomplete("searchSuggest.action",
                  {
                          minChars: 1,
                          matchContains: false 
                  }        
                  );
                });
        });
以為這樣就可以確定parent已載入完畢
看來是沒顧慮到left跟footer這兩塊是否已載入完成了

好奇的是
header應該是管自己的jquery.autocomplete.js有沒有載入好就好了吧?
跟其他mainpage include的page是否載入好有關?

TOP

DOM 都載入不代表 js 都載入完成喔,可以試試看先放到 window onload 試試看
$(window).load(function() {
  //放這邊
});
如果可以,表示執行 autocomplete 時,autocomplete.js 還未載入,所以再調整一下順序即可。
或放 window onload 也可以,只是可能比較慢才執行。
To infinity and beyond!

TOP

遇到了一個問題
不知道有沒有人也一樣

我在單獨的jsp中執行沒問題
但如果以下兩種情況
1.這支jsp include其他jsp
2.這支jsp被其他頁面include
都會出現error message
IE是Object doesnt support this property or method
FF是autocomplete is not a function

本來是以為沒呼叫成功
不過我在jquery.autocomplete.js加入測試function
且呼叫它是有執行的
所以並不是jquery.autocomplete.js沒載入

試過等每個頁面的DOM都載入後才執行
也是一樣的錯誤訊息

目前這個text field是放在header
只執行header是ok的
現在每個頁面都會include header
這樣的情況就無法正確執行

TOP

回復 86# chiyuan1980

把 matchContains 改成 false 就可以囉
To infinity and beyond!

TOP

請問~
<script type="text/javascript">
$(function() {
    var data = ['abc','acd','bad','cde,'aac];
    $("#t1").autocomplete(data, { matchContains: true });
   });
</script>


這樣有辦法
當我輸入
a
時只出現

abc
acd
aac

a開頭的提示字?

而不是
出現
abc
acd
bad
aac

中文也一樣

因為我現調屬性幾乎都沒變成我希望的~
謝謝!

TOP

嗯,還是謝謝您....

TOP

稍微看了一下,似乎沒有這樣的功能喔...
To infinity and beyond!

TOP

抱歉沒說清楚
就是按下旁邊的按鈕,在輸入框沒有key任何字的情況下,
也會顯示出auto-complete所設定的預設值
能夠做到嗎?
謝謝

TOP

你希望做到什麼樣的功能呢?按下旁邊的按鈕可以有作用嗎?還是只是裝飾的樣式?

若是裝飾的樣式,可以在原本的輸入框透過 CSS 指定一個背景圖即可。
To infinity and beyond!

TOP

想在右邊加入按鈕

版大您好:

小弟參考您的範例
但想要在輸入框右邊加入下拉的按鈕
以表示這個值有auto-complete的功能
如: http://evaqoo.blogdns.net/jquery-autocomplete/test/test.html

原始碼如下:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" c>
<link rel="stylesheet" type="text/css" href="css/jquery.autocomplete.css" />     
<script type="text/javascript" src="js/jquery.js"></script>  
<script type="text/javascript" src="js/jquery.autocomplete.js"></script>
<script type="text/javascript">  
$(function() {   
var data = ['台北市中正區','台北市大同區','台北市中山區','台北市松山區','台北市大安區'];      
  $("#t1").autocomplete(data,  {minChars: 0,autoFill: true,matchContains: true, mustMatch: true});      
  $("#b1").bind("click",function(e){
                $("#t1").search(e);
        });      
});   
</script>
</head>

<body>
<input type="text" name="t1" id="t1" /><input type="button" id="b1" value="▼">  
<span></span>
</body>
</html>

但似乎沒辦法

請教是否有方法可行?

謝謝

[ 本帖最後由 lyndon1104 於 2009-9-25 16:43 編輯 ]

TOP

返回列表 回復 發帖