Yii Framework v1.1.10 绫诲弬鑰

CAutoComplete

system.web.widgets
缁ф壙 class CAutoComplete » CInputWidget » CWidget » CBaseController » CComponent
婧愯嚜 1.0
鐗堟湰 $Id: CAutoComplete.php 3515 2011-12-28 12:29:24Z mdomba $
婧愮爜 framework/web/widgets/CAutoComplete.php
CAutoComplete鐢熸垚涓涓嚜鍔ㄥ畬鎴愮殑杈撳叆瀛楁銆

CAutoComplete鍩轰簬jQuery Autocomplete

浠1.1.3鐗堝紑濮嬶紝杩欎釜绫昏寮冪敤銆傝冭檻浣跨敤CJuiAutoComplete浠f浛銆 杩欏効鏄 a good migration guide from the author of both JavaScript solutions.

鍏叡灞炴

闅愯棌缁ф壙灞炴

灞炴绫诲瀷鎻忚堪瀹氫箟鍦
actionPrefix string actions鐨処D鐨勫墠缂銆 褰撳井浠跺湪CController::actions涓0鏄庝簡 鍔ㄤ綔鎻愪緵鑰咃紝鍙互涓哄叾鍔ㄤ綔鐨処D鎸囧畾鍓嶇紑浠ュ尯鍒 浜庡埆鐨勫井浠舵垨鎺у埗鍣ㄣ傚綋寰欢鐢ㄤ簬鎺у埗鍣 鐨勮鍥句腑鏃讹紝蹇呴』閰嶇疆鍚屾牱鐨勫墠缂銆 CWidget
attribute string the 涓庢灏忕墿浠剁浉鍏宠仈鐨勫睘鎬с 杩欎釜鍚嶅瓧鍙互鍖呭惈鏂规嫭鍙 (e. CInputWidget
autoFill boolean 鍦ㄩ夋嫨鍊肩殑杩囩▼涓紝濡傛灉鏈夋洿澶氱殑閿洏杈撳叆鎴栬呴紶鏍囬夋嫨锛 鏄惁鑷姩濉厖鍐呭鍒拌緭鍏ユ涓傞粯璁ゅ兼槸false銆 CAutoComplete
cacheLength integer 鍚庡彴鏌ヨ鐨勭粨鏋滀繚瀛樺湪缂撳瓨涓殑鏁伴噺銆 濡傛灉璁剧疆涓1锛堝嵆褰撳墠缁撴灉锛夛紝灏嗕笉浼氳繘琛岀紦瀛樸傛鍊煎繀椤诲ぇ浜庣瓑浜1銆傞粯璁ゅ兼槸10銆 CAutoComplete
controller CController 杩斿洖姝ゅ井浠舵墍灞炵殑鎺у埗鍣ㄣ CWidget
cssFile mixed 姝ゅ井浠朵娇鐢ㄧ殑CSS鏂囦欢銆傞粯璁ゅ兼槸null锛岃〃绀 浣跨敤鍖呭惈鍦ㄦ寰欢涓殑榛樿CSS鏂囦欢銆 濡傛灉璁剧疆涓篺alse锛屽皢涓嶄細浣跨敤CSS鏂囦欢銆傚叾浠栨儏鍐典笅锛屾寚瀹 鐨凜SS鏂囦欢灏嗚鍖呭惈鍦ㄦ寰欢涓 CAutoComplete
data array 鍙互瀛樺偍涓哄鎴风鏁版嵁鐨勬暟缁勶紝鐢ㄤ簬鎻愪緵鍊欓夐」銆 姣忎釜鏁扮粍鍏冪礌鍙互鏄竴涓瓧绗︿覆鎴栦竴涓叧鑱旀暟缁勩 濡傛灉璁剧疆浜嗘灞炴у硷紝url灞炴у皢琚拷鐣ャ CAutoComplete
delay integer 鑷姩杈撳叆鎺т欢鍦ㄦ帴鏀跺埌涓娆″嚮閿悗 寤惰繜澶氬皯姣鍚庤婵娲汇傞粯璁ゅ兼槸400銆 CAutoComplete
extraParams array 鍚庣鐨勯澶栧弬鏁般傚鏋滀綘鎸囧畾浜 array('bar'=>4)锛屾鑷姩杈撳叆鎺т欢灏嗚皟鐢ㄤ竴涓狦ET鍙傛暟'bar=4' 璋冪敤鍚庣绋嬪簭銆傛鍙傛暟鍙互鏄竴涓嚱鏁帮紝姝ゅ嚱鏁板湪姣忔 璇锋眰涔嬪墠琚皟鐢ㄦ潵璁$畻鍙傛暟鐨勫笺 CAutoComplete
formatItem string 涓涓狫avaScript鍑芥暟锛屽畠鍙互瀵逛竴涓潯鐩繘琛岄珮绾ф爣璇嗐 瀵逛簬缁撴灉闆嗕腑鐨勬瘡涓琛岋紝姝ゅ嚱鏁伴兘灏嗚璋冪敤銆傝繑鍥炲煎皢琚樉绀虹粨鏋滈泦鍒楄〃 涓殑涓涓狶I鍏冪礌涓傝嚜鍔ㄨ緭鍏ユ帶浠舵彁渚涗簡鍥涗釜鍙傛暟锛氱粍鎴愮粨鏋滈泦鐨勮锛 姣忎竴琛屽湪缁撴灉闆嗗垪琛ㄤ腑鐨勪綅缃紙浠1寮濮嬶級锛岀粨鏋滈泦鍒楄〃涓潯鐩殑鏁伴噺锛 浠ュ強鎼滅储鍏抽敭璇嶃 榛樿琛屼负鏄亣璁句竴涓崟涓鐨勮鍖呭惈涓涓崟涓鐨勫笺 CAutoComplete
formatMatch string 涓涓狫avaScript鍑芥暟锛屽畠鐢ㄤ簬闄愬埗鑷姩瀹屾垚鎺т欢灏嗘煡鎵剧殑 鍖归厤鏁版嵁銆備緥濡傦紝浣犳湁涓浜涙潯鐩笇鏈涙樉绀虹粰鐢ㄦ埛鐪嬪埌锛屼絾涓嶅笇鏈涘畠浠 鍖呭惈鍦ㄦ悳绱㈠嚭鐨勬暟鎹腑銆傛鍑芥暟鐨勮皟鐢ㄥ弬鏁颁笌formatItem涓鑷达紝 榛樿琛屼负涔熶笌formatItem涓鑷淬 CAutoComplete
formatResult string 涓涓狫avaScript鍑芥暟锛屽畠涓洪渶瑕佹斁鍒拌緭鍏ュ煙鐨勫兼彁渚涗簡 鏍煎紡銆傚啀娆¢噸澶嶄笁涓弬鏁帮細鏁版嵁锛屼綅缃紙浠1寮濮嬶級鍜屾暟鎹」鐨勬绘暟銆 榛樿鍊艰涓哄彲浠ユ槸鐢ㄤ綔缁撴灉闆嗙殑绠鍗曟暟鎹紝涔熷彲浠ユ槸鍚屾牱鐨勫 鎻愪緵缁檉ormatItem銆 CAutoComplete
highlight boolean|string 鏄惁銆佸浣曞尮閰嶉夋嫨妗嗙殑楂樺害銆 璁剧疆涓篺alse灏嗙鐢紝璁剧疆涓轰竴涓狫avascript鍑芥暟鍙互杩涜鑷畾涔夈 姝ゅ嚱鏁拌幏鍙栨鍊间綔涓虹涓涓弬鏁帮紝鎼滅储鍏抽敭璇嶄綔涓虹浜屼釜鍙傛暟锛 鐒跺悗杩斿洖鏍煎紡鍖栧悗鐨勫笺傞粯璁よ涓烘槸灏嗘悳绱㈠叧閿瘝浠<strong>鍏冪礌鍖呰銆 CAutoComplete
htmlOptions array 娓叉煋杈撳叆鏍囩鏃堕檮鍔犵殑HTML閫夐」 CInputWidget
id string 杩斿洖姝ゅ井浠剁殑ID銆傚鏋滈渶瑕佺殑璇濓紝灏嗙敓浜т竴涓柊鐨処D骞跺皢鍏惰繑鍥炪 CWidget
inputClass string 杈撳叆鍏冪礌浣跨敤鐨凜SS绫汇傞粯璁ゅ兼槸"ac_input"銆 CAutoComplete
loadingClass string 浠庡悗绔姞杞芥暟鎹椂浣跨敤鐨凜SS绫汇傞粯璁ゅ兼槸"ac_loading"銆 CAutoComplete
matchCase boolean 姣旇緝鏃舵槸鍚﹀ぇ灏忓啓鏁忔劅銆備粎鍦ㄤ綘浣跨敤缂撳瓨鏃舵灞炴у 鎵嶆槸閲嶈鐨勩傞粯璁ゅ兼槸false銆 CAutoComplete
matchContains boolean 鏄惁鍦ㄧ粨鏋滈泦涓繘琛屾瘮杈冿紙渚嬪锛屾槸鍚︹渂a鈥 鍖归厤鈥渇oo bar鈥濓級銆備粎褰撲綘浣跨敤缂撳瓨鏃舵灞炴у兼墠鏄噸瑕佺殑銆 璇峰埆涓庤嚜鍔ㄥ~鍏咃紙autofill锛夋贩娣嗐傞粯璁ゅ兼槸false銆 CAutoComplete
matchSubset boolean 姝よ嚜鍔ㄨ緭鍏ユ帶浠舵槸鍚﹀彲浠ヤ负鏇村鐗瑰畾鐨勬煡璇娇鐢 鍚屼竴涓紦瀛樸傚彲浠ヨ繖涔堢悊瑙o細鎵鏈夊尮閰"foot"鐨勭粨鏋滈泦锛屾槸涓涓 鎵鏈夊尮閰"foo"鐨勭粨鏋滈泦鐨勫瓙闆嗐傞氬父姝ゅ睘鎬ц缃负true锛岄氳繃 浣跨敤瀹冨彲浠ラ檷浣庢湇鍔″櫒鐨勮礋鑽峰拰澧炲姞鎬ц兘銆傛灞炴т粎鍦╟acheLength 鐨勮缃煎ぇ浜1鏃舵湁鐢紝渚嬪10銆傞粯璁ゅ兼槸true銆 CAutoComplete
max integer 鍦ㄩ夋嫨妗嗕腑鐨勬潯鐩暟鐨勯檺鍒躲傚畠涔熷皢浣滀负 "limit"浼犻掔粰涓涓繙绋嬭姹傘傞粯璁ゅ兼槸10銆 CAutoComplete
methodChain string 鑻ュ共鏂规硶璋冪敤鐨勯摼锛屽皢琚檮鍔犲埌鑷姩杈撳叆鎺т欢鐨勬瀯閫犳柟娉曠殑缁撳熬閮ㄥ垎銆 渚嬪锛". CAutoComplete
minChars integer 鐢ㄦ埛鑷冲皯闇瑕佽緭鍏ュ嚑涓瓧绗︽墠浼 婵娲昏嚜鍔ㄨ緭鍏ユ帶浠躲傞粯璁ゅ兼槸1銆 CAutoComplete
model CModel 涓庢灏忕墿浠剁浉鍏宠仈鐨勬暟鎹ā鍨嬨 CInputWidget
multiple boolean 鏄惁鍏佽杈撳叆澶氫簬涓涓殑鑷姩瀹屾垚鐨勫笺傞粯璁ゅ兼槸false銆 CAutoComplete
multipleSeparator string 褰撲娇鐢ㄥ閫夐」鏃舵彃鍏ュ埌鍊间箣闂寸殑鍒嗛殧绗︺傞粯璁ゅ兼槸鈥滐紝鈥濄 CAutoComplete
mustMatch boolean 濡傛灉璁剧疆涓簍rue锛屾鑷姩杈撳叆鎺т欢灏嗕粎鍏佽 鍚庡彴鎻愪緵鐨勯夐」銆傛棤鏁堝煎湪杈撳叆妗嗕腑鏄┖鐧姐 榛樿鍊兼槸false銆 CAutoComplete
name string 杈撳叆鎺т欢鐨勫悕瀛椼傚鏋model娌℃湁璁剧疆锛屽垯蹇呴』璁剧疆姝ゅ睘鎬с CInputWidget
options array 灏嗚浼犻掔粰鑷姩瀹屾垚js瀵硅薄鐨勯澶栭夐」銆 瀹冨厑璁镐綘瑕嗙洊鐜版湁鐨勮嚜鍔ㄥ畬鎴恓s绫荤殑鍑芥暟锛堜緥濡傦紝parse()鍑芥暟锛夈

濡傛灉浣犲笇鏈涙彁渚涙湰鍦板寲鐨凧avaScript浠g爜锛屼綘闇瑕佸湪寮曞彿涓殑瀛楃涓 鐨勫墠闈㈠姞涓娾渏s:鈥濆墠缂銆
CAutoComplete
owner CBaseController 杩斿洖姝ゅ井浠剁殑鎵鏈夎呮垨鍒涘缓鑰呫 CWidget
resultsClass string 涓嬫媺鍒楄〃浣跨敤鐨凜SS绫汇傞粯璁ゅ兼槸"ac_results"銆 CAutoComplete
scroll boolean 褰撶粨鏋滈泦瓒呰繃浜唖crollHeight璁剧疆鐨勫彲鐢ㄩ珮搴︽椂锛屾槸鍚﹀厑璁稿嵎鍔ㄣ傞粯璁ゅ兼槸true銆 CAutoComplete
scrollHeight integer 鍙嵎鍔ㄧ殑鑷姩瀹屾垚鎺т欢鐨勯珮搴︺傞粯璁ゅ兼槸180銆 CAutoComplete
selectFirst boolean 濡傛灉璁剧疆涓簍rue锛屽綋鎸変笅tab閿垨鍥炶溅閿椂锛 绗竴涓欓夐」灏嗚閫変腑锛屽嵆浣垮畠娌℃湁琚娇鐢ㄩ敭鐩樻垨榧犳爣鎵嬪姩 閫変腑銆傚鏋滃凡鏈変竴涓墜鍔ㄩ変腑鐨勯夐」锛堝凡鍔犱寒锛夛紝璇ラ夐」灏 琚紭鍏堥変腑銆傞粯璁ゅ兼槸true銆 CAutoComplete
skin mixed 寰欢浣跨敤鐨勭毊鑲ょ殑鍚嶇О銆傞粯璁や负鈥渄efault鈥濄 濡傛灉姝ゅ睘鎬ц缃负false锛屽井浠跺皢涓嶄細鏈夌毊鑲よ浣跨敤銆 CWidget
textArea boolean whether 鏄惁浣跨敤澶氳鏂囨湰鍖烘潵鏄剧ず鑷姩杈撳叆鍩熴傞粯璁ゅ兼槸false锛 琛ㄧず浣跨敤涓涓枃鏈緭鍏ユ銆 CAutoComplete
url string|array 鍙互杩斿洖鍊欓夐」鐨刄RL銆 鍚屾椂浼犻掑埌姝RL鐨勮繕鏈変竴涓悕涓衡渜鈥濈殑GET鍙傛暟锛屾鍙傛暟鍖呭惈浜嗙敤鎴锋渶鏂扮殑杈撳叆淇℃伅銆 濡傛灉姝RL缁欏畾涓轰竴涓暟缁勶紝瀹冨皢琚涓烘槸涓涓矾鐢憋紝鎸囧悜涓涓帶鍒跺櫒鐨勫姩浣滐紝骞朵娇鐢 CController::createUrl鏉ョ敓鎴愪竴涓猆RL; 濡傛灉姝RL缁欏畾涓轰竴涓┖瀛楃涓诧紝鍒欏皢浣跨敤褰撳墠鐨刄RL銆 濡傛灉data宸茶缃紝鍒欐灞炴ц蹇界暐銆 CAutoComplete
value string 杈撳叆鎺т欢鐨勫 CInputWidget
viewPath string 杩斿洖鍖呭惈姝ゅ井浠舵墍闇鐨勮鍥炬枃浠剁殑璺緞銆 CWidget
width integer 涓洪夋嫨妗嗘寚瀹氫竴涓嚜瀹氫箟瀹藉害銆傞粯璁ゅ兼槸姝よ緭鍏ュ厓绱犵殑瀹藉害銆 CAutoComplete

鍙椾繚鎶ゅ睘鎬

闅愯棌缁ф壙灞炴

灞炴绫诲瀷鎻忚堪瀹氫箟鍦
clientOptions array JavaScript鐨勯夐」銆 CAutoComplete

鍏叡鏂规硶

闅愯棌缁ф壙鏂规硶

鏂规硶鎻忚堪瀹氫箟鍦
__call() 濡傛灉绫讳腑娌℃湁璋冪殑鏂规硶鍚嶏紝鍒欒皟鐢ㄨ繖涓柟娉曘 CComponent
__construct() 鏋勯犲櫒銆 CWidget
__get() 杩斿洖涓涓睘鎬у笺佷竴涓簨浠跺鐞嗙▼搴忓垪琛ㄦ垨涓涓涓哄悕绉般 CComponent
__isset() 妫鏌ヤ竴涓睘鎬ф槸鍚︿负null銆 CComponent
__set() 璁剧疆涓涓粍浠剁殑灞炴у笺 CComponent
__unset() 璁剧疆涓涓粍浠剁殑灞炴т负null銆 CComponent
actions() 杩斿洖姝idget浣跨敤鐨勫姩浣滅殑鍒楄〃銆 CWidget
asa() 杩斿洖杩欎釜鍚嶅瓧鐨勮涓哄璞° CComponent
attachBehavior() 闄勫姞涓涓涓哄埌缁勪欢銆 CComponent
attachBehaviors() 闄勫姞涓涓涓哄垪琛ㄥ埌缁勪欢銆 CComponent
attachEventHandler() 涓轰簨浠堕檮鍔犱竴涓簨浠跺鐞嗙▼搴忋 CComponent
beginCache() Begins fragment caching. CBaseController
beginClip() Begins recording a clip. CBaseController
beginContent() Begins the rendering of content that is to be decorated by the specified view. CBaseController
beginWidget() Creates a widget and executes it. CBaseController
canGetProperty() 纭畾灞炴ф槸鍚﹀彲璇汇 CComponent
canSetProperty() 纭畾灞炴ф槸鍚﹀彲鍐欍 CComponent
createWidget() Creates a widget and initializes it. CBaseController
detachBehavior() 浠庣粍浠朵腑鍒嗙涓涓涓恒 CComponent
detachBehaviors() 浠庣粍浠朵腑鍒嗙鎵鏈夎涓恒 CComponent
detachEventHandler() 鍒嗙涓涓瓨鍦ㄧ殑浜嬩欢澶勭悊绋嬪簭銆 CComponent
disableBehavior() 绂佺敤涓涓檮鍔犺涓恒 CComponent
disableBehaviors() 绂佺敤缁勪欢闄勫姞鐨勬墍鏈夎涓恒 CComponent
enableBehavior() 鍚敤涓涓檮鍔犺涓恒 CComponent
enableBehaviors() 鍚敤缁勪欢闄勫姞鐨勬墍鏈夎涓恒 CComponent
endCache() Ends fragment caching. CBaseController
endClip() Ends recording a clip. CBaseController
endContent() Ends the rendering of content. CBaseController
endWidget() Ends the execution of the named widget. CBaseController
evaluateExpression() 璁$畻涓涓狿HP琛ㄨ揪寮忥紝鎴栨牴鎹粍浠朵笂涓嬫枃鎵ц鍥炶皟銆 CComponent
getController() 杩斿洖姝ゅ井浠舵墍灞炵殑鎺у埗鍣ㄣ CWidget
getEventHandlers() 杩斿洖涓涓簨浠剁殑闄勫姞澶勭悊绋嬪簭鍒楄〃銆 CComponent
getId() 杩斿洖姝ゅ井浠剁殑ID銆傚鏋滈渶瑕佺殑璇濓紝灏嗙敓浜т竴涓柊鐨処D骞跺皢鍏惰繑鍥炪 CWidget
getOwner() 杩斿洖姝ゅ井浠剁殑鎵鏈夎呮垨鍒涘缓鑰呫 CWidget
getViewFile() 鏍规嵁瑙嗗浘鍚嶆煡鎵捐鍥炬枃浠躲 CWidget
getViewPath() 杩斿洖鍖呭惈姝ゅ井浠舵墍闇鐨勮鍥炬枃浠剁殑璺緞銆 CWidget
hasEvent() 纭畾涓涓簨浠舵槸鍚﹀畾涔夈 CComponent
hasEventHandler() 妫鏌ヤ簨浠舵槸鍚︽湁闄勫姞鐨勫鐞嗙▼搴忋 CComponent
hasProperty() 纭畾灞炴ф槸鍚﹁瀹氫箟銆 CComponent
init() 鍒濆鍖栨寰欢銆 CAutoComplete
raiseEvent() 鍙戣捣涓涓簨浠躲 CComponent
registerClientScript() 娉ㄥ唽蹇呴』鐨凜SS鍜孞avaScript銆 CAutoComplete
registerCssFile() 娉ㄥ唽蹇呴』鐨凜SS鏂囦欢銆 CAutoComplete
render() 娓叉煋涓涓鍥俱 CWidget
renderFile() Renders a view file. CBaseController
renderInternal() Renders a view file. CBaseController
run() 杩愯姝ゅ井浠躲 CWidget
setId() 璁剧疆姝ゅ井浠剁殑ID銆 CWidget
widget() Creates a widget and executes it. CBaseController

鍙椾繚鎶ゆ柟娉

闅愯棌缁ф壙鏂规硶

鏂规硶鎻忚堪瀹氫箟鍦
getClientOptions() 杩斿洖JavaScript鐨勯夐」銆 CAutoComplete
hasModel() 纭畾姝ゅ皬鐗╀欢鏄惁涓庝竴涓暟鎹ā鍨嬬浉鍏宠仈銆 CInputWidget
resolveNameID() CInputWidget

灞炴ц缁

autoFill 灞炴
public boolean $autoFill;

鍦ㄩ夋嫨鍊肩殑杩囩▼涓紝濡傛灉鏈夋洿澶氱殑閿洏杈撳叆鎴栬呴紶鏍囬夋嫨锛 鏄惁鑷姩濉厖鍐呭鍒拌緭鍏ユ涓傞粯璁ゅ兼槸false銆

cacheLength 灞炴
public integer $cacheLength;

鍚庡彴鏌ヨ鐨勭粨鏋滀繚瀛樺湪缂撳瓨涓殑鏁伴噺銆 濡傛灉璁剧疆涓1锛堝嵆褰撳墠缁撴灉锛夛紝灏嗕笉浼氳繘琛岀紦瀛樸傛鍊煎繀椤诲ぇ浜庣瓑浜1銆傞粯璁ゅ兼槸10銆

clientOptions 灞炴 鍙
protected array getClientOptions()

JavaScript鐨勯夐」銆

cssFile 灞炴
public mixed $cssFile;

姝ゅ井浠朵娇鐢ㄧ殑CSS鏂囦欢銆傞粯璁ゅ兼槸null锛岃〃绀 浣跨敤鍖呭惈鍦ㄦ寰欢涓殑榛樿CSS鏂囦欢銆 濡傛灉璁剧疆涓篺alse锛屽皢涓嶄細浣跨敤CSS鏂囦欢銆傚叾浠栨儏鍐典笅锛屾寚瀹 鐨凜SS鏂囦欢灏嗚鍖呭惈鍦ㄦ寰欢涓

data 灞炴
public array $data;

鍙互瀛樺偍涓哄鎴风鏁版嵁鐨勬暟缁勶紝鐢ㄤ簬鎻愪緵鍊欓夐」銆 姣忎釜鏁扮粍鍏冪礌鍙互鏄竴涓瓧绗︿覆鎴栦竴涓叧鑱旀暟缁勩 濡傛灉璁剧疆浜嗘灞炴у硷紝url灞炴у皢琚拷鐣ャ

鍙傝

delay 灞炴
public integer $delay;

鑷姩杈撳叆鎺т欢鍦ㄦ帴鏀跺埌涓娆″嚮閿悗 寤惰繜澶氬皯姣鍚庤婵娲汇傞粯璁ゅ兼槸400銆

extraParams 灞炴
public array $extraParams;

鍚庣鐨勯澶栧弬鏁般傚鏋滀綘鎸囧畾浜 array('bar'=>4)锛屾鑷姩杈撳叆鎺т欢灏嗚皟鐢ㄤ竴涓狦ET鍙傛暟'bar=4' 璋冪敤鍚庣绋嬪簭銆傛鍙傛暟鍙互鏄竴涓嚱鏁帮紝姝ゅ嚱鏁板湪姣忔 璇锋眰涔嬪墠琚皟鐢ㄦ潵璁$畻鍙傛暟鐨勫笺

formatItem 灞炴
public string $formatItem;

涓涓狫avaScript鍑芥暟锛屽畠鍙互瀵逛竴涓潯鐩繘琛岄珮绾ф爣璇嗐 瀵逛簬缁撴灉闆嗕腑鐨勬瘡涓琛岋紝姝ゅ嚱鏁伴兘灏嗚璋冪敤銆傝繑鍥炲煎皢琚樉绀虹粨鏋滈泦鍒楄〃 涓殑涓涓狶I鍏冪礌涓傝嚜鍔ㄨ緭鍏ユ帶浠舵彁渚涗簡鍥涗釜鍙傛暟锛氱粍鎴愮粨鏋滈泦鐨勮锛 姣忎竴琛屽湪缁撴灉闆嗗垪琛ㄤ腑鐨勪綅缃紙浠1寮濮嬶級锛岀粨鏋滈泦鍒楄〃涓潯鐩殑鏁伴噺锛 浠ュ強鎼滅储鍏抽敭璇嶃 榛樿琛屼负鏄亣璁句竴涓崟涓鐨勮鍖呭惈涓涓崟涓鐨勫笺

formatMatch 灞炴
public string $formatMatch;

涓涓狫avaScript鍑芥暟锛屽畠鐢ㄤ簬闄愬埗鑷姩瀹屾垚鎺т欢灏嗘煡鎵剧殑 鍖归厤鏁版嵁銆備緥濡傦紝浣犳湁涓浜涙潯鐩笇鏈涙樉绀虹粰鐢ㄦ埛鐪嬪埌锛屼絾涓嶅笇鏈涘畠浠 鍖呭惈鍦ㄦ悳绱㈠嚭鐨勬暟鎹腑銆傛鍑芥暟鐨勮皟鐢ㄥ弬鏁颁笌formatItem涓鑷达紝 榛樿琛屼负涔熶笌formatItem涓鑷淬

formatResult 灞炴
public string $formatResult;

涓涓狫avaScript鍑芥暟锛屽畠涓洪渶瑕佹斁鍒拌緭鍏ュ煙鐨勫兼彁渚涗簡 鏍煎紡銆傚啀娆¢噸澶嶄笁涓弬鏁帮細鏁版嵁锛屼綅缃紙浠1寮濮嬶級鍜屾暟鎹」鐨勬绘暟銆 榛樿鍊艰涓哄彲浠ユ槸鐢ㄤ綔缁撴灉闆嗙殑绠鍗曟暟鎹紝涔熷彲浠ユ槸鍚屾牱鐨勫 鎻愪緵缁檉ormatItem銆

highlight 灞炴
public boolean|string $highlight;

鏄惁銆佸浣曞尮閰嶉夋嫨妗嗙殑楂樺害銆 璁剧疆涓篺alse灏嗙鐢紝璁剧疆涓轰竴涓狫avascript鍑芥暟鍙互杩涜鑷畾涔夈 姝ゅ嚱鏁拌幏鍙栨鍊间綔涓虹涓涓弬鏁帮紝鎼滅储鍏抽敭璇嶄綔涓虹浜屼釜鍙傛暟锛 鐒跺悗杩斿洖鏍煎紡鍖栧悗鐨勫笺傞粯璁よ涓烘槸灏嗘悳绱㈠叧閿瘝浠<strong>鍏冪礌鍖呰銆

inputClass 灞炴
public string $inputClass;

杈撳叆鍏冪礌浣跨敤鐨凜SS绫汇傞粯璁ゅ兼槸"ac_input"銆

loadingClass 灞炴
public string $loadingClass;

浠庡悗绔姞杞芥暟鎹椂浣跨敤鐨凜SS绫汇傞粯璁ゅ兼槸"ac_loading"銆

matchCase 灞炴
public boolean $matchCase;

姣旇緝鏃舵槸鍚﹀ぇ灏忓啓鏁忔劅銆備粎鍦ㄤ綘浣跨敤缂撳瓨鏃舵灞炴у 鎵嶆槸閲嶈鐨勩傞粯璁ゅ兼槸false銆

matchContains 灞炴
public boolean $matchContains;

鏄惁鍦ㄧ粨鏋滈泦涓繘琛屾瘮杈冿紙渚嬪锛屾槸鍚︹渂a鈥 鍖归厤鈥渇oo bar鈥濓級銆備粎褰撲綘浣跨敤缂撳瓨鏃舵灞炴у兼墠鏄噸瑕佺殑銆 璇峰埆涓庤嚜鍔ㄥ~鍏咃紙autofill锛夋贩娣嗐傞粯璁ゅ兼槸false銆

matchSubset 灞炴
public boolean $matchSubset;

姝よ嚜鍔ㄨ緭鍏ユ帶浠舵槸鍚﹀彲浠ヤ负鏇村鐗瑰畾鐨勬煡璇娇鐢 鍚屼竴涓紦瀛樸傚彲浠ヨ繖涔堢悊瑙o細鎵鏈夊尮閰"foot"鐨勭粨鏋滈泦锛屾槸涓涓 鎵鏈夊尮閰"foo"鐨勭粨鏋滈泦鐨勫瓙闆嗐傞氬父姝ゅ睘鎬ц缃负true锛岄氳繃 浣跨敤瀹冨彲浠ラ檷浣庢湇鍔″櫒鐨勮礋鑽峰拰澧炲姞鎬ц兘銆傛灞炴т粎鍦╟acheLength 鐨勮缃煎ぇ浜1鏃舵湁鐢紝渚嬪10銆傞粯璁ゅ兼槸true銆

max 灞炴
public integer $max;

鍦ㄩ夋嫨妗嗕腑鐨勬潯鐩暟鐨勯檺鍒躲傚畠涔熷皢浣滀负 "limit"浼犻掔粰涓涓繙绋嬭姹傘傞粯璁ゅ兼槸10銆

methodChain 灞炴
public string $methodChain;

鑻ュ共鏂规硶璋冪敤鐨勯摼锛屽皢琚檮鍔犲埌鑷姩杈撳叆鎺т欢鐨勬瀯閫犳柟娉曠殑缁撳熬閮ㄥ垎銆 渚嬪锛".result(function(...){})" 灏嗕娇寰楀湪鐢ㄦ埛閫夋嫨浜嗕竴涓夐」涔嬪悗锛屾寚瀹氱殑 js鍑芥暟琚墽琛屻

minChars 灞炴
public integer $minChars;

鐢ㄦ埛鑷冲皯闇瑕佽緭鍏ュ嚑涓瓧绗︽墠浼 婵娲昏嚜鍔ㄨ緭鍏ユ帶浠躲傞粯璁ゅ兼槸1銆

multiple 灞炴
public boolean $multiple;

鏄惁鍏佽杈撳叆澶氫簬涓涓殑鑷姩瀹屾垚鐨勫笺傞粯璁ゅ兼槸false銆

multipleSeparator 灞炴
public string $multipleSeparator;

褰撲娇鐢ㄥ閫夐」鏃舵彃鍏ュ埌鍊间箣闂寸殑鍒嗛殧绗︺傞粯璁ゅ兼槸鈥滐紝鈥濄

mustMatch 灞炴
public boolean $mustMatch;

濡傛灉璁剧疆涓簍rue锛屾鑷姩杈撳叆鎺т欢灏嗕粎鍏佽 鍚庡彴鎻愪緵鐨勯夐」銆傛棤鏁堝煎湪杈撳叆妗嗕腑鏄┖鐧姐 榛樿鍊兼槸false銆

options 灞炴
public array $options;

灏嗚浼犻掔粰鑷姩瀹屾垚js瀵硅薄鐨勯澶栭夐」銆 瀹冨厑璁镐綘瑕嗙洊鐜版湁鐨勮嚜鍔ㄥ畬鎴恓s绫荤殑鍑芥暟锛堜緥濡傦紝parse()鍑芥暟锛夈

濡傛灉浣犲笇鏈涙彁渚涙湰鍦板寲鐨凧avaScript浠g爜锛屼綘闇瑕佸湪寮曞彿涓殑瀛楃涓 鐨勫墠闈㈠姞涓娾渏s:鈥濆墠缂銆

resultsClass 灞炴
public string $resultsClass;

涓嬫媺鍒楄〃浣跨敤鐨凜SS绫汇傞粯璁ゅ兼槸"ac_results"銆

scroll 灞炴
public boolean $scroll;

褰撶粨鏋滈泦瓒呰繃浜唖crollHeight璁剧疆鐨勫彲鐢ㄩ珮搴︽椂锛屾槸鍚﹀厑璁稿嵎鍔ㄣ傞粯璁ゅ兼槸true銆

scrollHeight 灞炴
public integer $scrollHeight;

鍙嵎鍔ㄧ殑鑷姩瀹屾垚鎺т欢鐨勯珮搴︺傞粯璁ゅ兼槸180銆

selectFirst 灞炴
public boolean $selectFirst;

濡傛灉璁剧疆涓簍rue锛屽綋鎸変笅tab閿垨鍥炶溅閿椂锛 绗竴涓欓夐」灏嗚閫変腑锛屽嵆浣垮畠娌℃湁琚娇鐢ㄩ敭鐩樻垨榧犳爣鎵嬪姩 閫変腑銆傚鏋滃凡鏈変竴涓墜鍔ㄩ変腑鐨勯夐」锛堝凡鍔犱寒锛夛紝璇ラ夐」灏 琚紭鍏堥変腑銆傞粯璁ゅ兼槸true銆

textArea 灞炴
public boolean $textArea;

whether 鏄惁浣跨敤澶氳鏂囨湰鍖烘潵鏄剧ず鑷姩杈撳叆鍩熴傞粯璁ゅ兼槸false锛 琛ㄧず浣跨敤涓涓枃鏈緭鍏ユ銆

url 灞炴
public string|array $url;

鍙互杩斿洖鍊欓夐」鐨刄RL銆 鍚屾椂浼犻掑埌姝RL鐨勮繕鏈変竴涓悕涓衡渜鈥濈殑GET鍙傛暟锛屾鍙傛暟鍖呭惈浜嗙敤鎴锋渶鏂扮殑杈撳叆淇℃伅銆 濡傛灉姝RL缁欏畾涓轰竴涓暟缁勶紝瀹冨皢琚涓烘槸涓涓矾鐢憋紝鎸囧悜涓涓帶鍒跺櫒鐨勫姩浣滐紝骞朵娇鐢 CController::createUrl鏉ョ敓鎴愪竴涓猆RL; 濡傛灉姝RL缁欏畾涓轰竴涓┖瀛楃涓诧紝鍒欏皢浣跨敤褰撳墠鐨刄RL銆 濡傛灉data宸茶缃紝鍒欐灞炴ц蹇界暐銆

鍙傝

width 灞炴
public integer $width;

涓洪夋嫨妗嗘寚瀹氫竴涓嚜瀹氫箟瀹藉害銆傞粯璁ゅ兼槸姝よ緭鍏ュ厓绱犵殑瀹藉害銆

鏂规硶璇︾粏

getClientOptions() 鏂规硶
protected array getClientOptions()
{return} array JavaScript鐨勯夐」銆
婧愮爜锛 framework/web/widgets/CAutoComplete.php#266 (鏄剧ず)
protected function getClientOptions()
{
    static 
$properties=array(
        
'minChars''delay''cacheLength''matchSubset',
        
'matchCase''matchContains''mustMatch''selectFirst',
        
'extraParams''multiple''multipleSeparator''width',
        
'autoFill''max''scroll''scrollHeight''inputClass',
        
'formatItem''formatMatch''formatResult''highlight',
        
'resultsClass''loadingClass');
    static 
$functions=array('formatItem''formatMatch''formatResult''highlight');

    
$options=$this->options;
    foreach(
$properties as $property)
    {
        if(
$this->$property!==null)
            
$options[$property]=$this->$property;
    }
    foreach(
$functions as $func)
    {
        if(
is_string($this->$func) && strncmp($this->$func,'js:',3))
            
$options[$func]='js:'.$this->$func;
    }

    return 
$options;
}

init() 鏂规硶
public void init()
婧愮爜锛 framework/web/widgets/CAutoComplete.php#202 (鏄剧ず)
public function init()
{
    list(
$name,$id)=$this->resolveNameID();
    if(isset(
$this->htmlOptions['id']))
        
$id=$this->htmlOptions['id'];
    else
        
$this->htmlOptions['id']=$id;
    if(isset(
$this->htmlOptions['name']))
        
$name=$this->htmlOptions['name'];

    
$this->registerClientScript();

    if(
$this->hasModel())
    {
        
$field=$this->textArea 'activeTextArea' 'activeTextField';
        echo 
CHtml::$field($this->model,$this->attribute,$this->htmlOptions);
    }
    else
    {
        
$field=$this->textArea 'textArea' 'textField';
        echo 
CHtml::$field($name,$this->value,$this->htmlOptions);
    }
}

鍒濆鍖栨寰欢銆 姝ゆ柟娉曟敞鍐屾墍鏈夊繀椤荤殑瀹㈡埛绔剼鏈劧鍚庢覆鏌 鑷姩杈撳叆鎺т欢銆

registerClientScript() 鏂规硶
public void registerClientScript()
婧愮爜锛 framework/web/widgets/CAutoComplete.php#229 (鏄剧ず)
public function registerClientScript()
{
    
$id=$this->htmlOptions['id'];

    
$acOptions=$this->getClientOptions();
    
$options=$acOptions===array()?'{}' CJavaScript::encode($acOptions);

    
$cs=Yii::app()->getClientScript();
    
$cs->registerCoreScript('autocomplete');
    if(
$this->data!==null)
        
$data=CJavaScript::encode($this->data);
    else
    {
        
$url=CHtml::normalizeUrl($this->url);
        
$data='"'.$url.'"';
    }
    
$cs->registerScript('Yii.CAutoComplete#'.$id,"jQuery(\"#{$id}\").legacyautocomplete($data,{$options}){$this->methodChain};");

    if(
$this->cssFile!==false)
        
self::registerCssFile($this->cssFile);
}

娉ㄥ唽蹇呴』鐨凜SS鍜孞avaScript銆

registerCssFile() 鏂规硶
public static void registerCssFile(string $url=NULL)
$url string CSS鏂囦欢鐨刄RL銆傚鏋滀负null锛屽皢浣跨敤榛樿鍊肩殑CSS鏂囦欢鐨刄RL銆
婧愮爜锛 framework/web/widgets/CAutoComplete.php#255 (鏄剧ず)
public static function registerCssFile($url=null)
{
    
$cs=Yii::app()->getClientScript();
    if(
$url===null)
        
$url=$cs->getCoreScriptUrl().'/autocomplete/jquery.autocomplete.css';
    
$cs->registerCssFile($url);
}

娉ㄥ唽蹇呴』鐨凜SS鏂囦欢銆

Copyright © 2008-2011 by Yii Software LLC
All Rights Reserved.