Railsのauto_complete_fieldは中国語のヒントをサポートします


Railsのauto_completeプラグインはとてもすばらしくて、少ないコードで入力ボックスの自動ヒント機能を実現することができて、使用中にこのプラグインが中国語をよくサポートできないことを発見して、もちろんこれはプラグインの間違いではありませんて、script.aculo.USというJSコンポーネントのAutocompleterは中国語のヒントをあまりサポートできません.例えば、「中国」の検索を入力場合、まず入力方式にzhongguoを入力と、JSはzhongguoを送信してバックグラウンドの検索を開始し、スペースを押して中国語を選択すると、JSは再び中国語をバックグラウンドに送信せず、ネット上で資料を調べ、controls.jsでEvent.observeのkeydownイベントをkeyupに変更すればいい(89行目付近)、中国語と英語の自動ヒントは問題ありません.このバグは今後のバージョンで修正されると信じています.
 
最近JQuery陣営に転入して、JQueryは依然として中国語の入力のヒントの問題があることを発見して、keydown事件をkeyupに変えるだけでいいので、しかしこの時ユーザーはTabあるいは車に戻るボタンを押して、選択したヒントの文字は入力ボックスに入ることができなくて、以下のコードに参加して解決します:
$input.bind("keydown.autocomplete", function(event) {
		switch(event.keyCode) {
			case KEY.TAB:
			case KEY.RETURN:
				if( selectCurrent() ) {
					// stop default to prevent a form submit, Opera needs special handling
					event.preventDefault();
					blockSubmit = true;
					return false;
				}
				break;
		}
	})