このコードは、searchTextChanged 関数を入力テキスト フィールドに関連付けます。
this.on('input', {
searchTextSelector: this._searchTextChanged
});
この関数は、_getValueFromEventObject 関数から値を取得し、値が 0 より大きい場合にごみ箱アイコンを表示します。
this._searchTextChanged = function (evt) {
var query = this._getValueFromEventObject(evt);
this.select('searchArea').toggleClass('site-header-search-filled', query.length > 0);
var payload = { 'query': query };
this.trigger(document, 'data:search:query', payload);
};
この関数は、入力イベント値を使用できるようにします。
this._getValueFromEventObject = function (evt) {
return evt.target ? (evt.target.value || evt.target[0].value) : '';
};
問題は、「バックスペース」を使用して入力フィールドからテキストを削除すると、次のエラーが発生することです。
したがって、バックスペース イベントはこの関数内で定義されていませんか?