返回列表 發帖

想在右邊加入按鈕

版大您好:

小弟參考您的範例
但想要在輸入框右邊加入下拉的按鈕
以表示這個值有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

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

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

TOP

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

TOP

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

TOP

嗯,還是謝謝您....

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

回復 86# chiyuan1980

把 matchContains 改成 false 就可以囉
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

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

TOP

本帖最後由 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

返回列表 回復 發帖