나는 태그 자동 완성 콤보 (tag-autocomplete combo)를하고있다.JQuery 자동 완성. 항목을 찾을 수없는 경우 "Enter 키를 눌러 자동 완성에 삽입"이라고 표시됩니까?
그래서 기본적으로 사용자가 내가 자동 완성 드롭 다운을 표시하려면, 어떤 자동 완성 옵션, 즉 "AAA"를이없는 쿼리를 입력하면 "보도 'AAA'에 대한 태그를 생성하는 '입력'을."
I을
내가 시작했다 : 워드 프로세서에서 아무것도 (. 나는이 몇 가지 해킹을 할 저를 필요로한다고 가정하지만, 그렇게하기 전에, 나는 누군가가 이것에 대한 패치를 할 경우보고 싶어)
가 편집 찾을 수 없습니다 소스 코드에 대한 작업은 이것이 가지고있는 것입니다 :
$.ui.autocomplete.prototype._response= function(content) {
/* BUG: when the user clicks "Press Enter to this tag",
* the tag "Press enter to create this tag"
* gets created
*/
console.log(content);
if (content.length == 0) {
content = [{ 'label': "Press Enter to create this tag.", "value": -1 }];
}
if (!this.options.disabled && content && content.length) {
content = this._normalize(content);
this._suggest(content);
this._trigger("open");
} else {
this.close();
}
this.pending--;
if (!this.pending) {
this.element.removeClass("ui-autocomplete-loading");
}
};
잘 작동합니다. 그러나 사용자가 "이 태그에 Enter 키를 누르십시오"를 클릭하면 "이 태그를 만들기 위해 Enter 키를 누르십시오"라는 태그가 생성됩니다. 어떻게 이것을 원래 쿼리로 수정합니까?
사용자가 실제로 태그가 있는지 여부에 신경 쓰나요? 대부분의 경우 나는 그렇지 않다고 말하고 싶습니다. 일반적으로 사용자에게 투명하게 새 태그를 만드는 것이 더 사용자 친화적 인 것처럼 보입니다. 귀하의 자동 완성 목록은 결과에서 선택한 태그를 추가하지만 태그가 발견되면 사용 중이 지 않은 경우에도 여전히 "태그 추가"버튼 또는 유사한 것을 가질 수 있다고 가정합니다. 그런 다음 결과가 없거나 사용자가 자동 완성 옵션을 클릭하지 않으려는 경우에도 태그를 추가 할 수 있습니다. 제출 (또는 타격 입력)을 클릭하십시오. 그냥 생각. –
@ 제레미 나는 가장 깨끗한 방법은 사용자에게 타이핑하고 입력하도록 알리는 것이라고 생각합니다. 사용자가 존재하는 것을 입력하면 쿼리가 발견되지 않으면 빈 상자가 사용자를 혼동시킬 수 있습니다. 나는 단지 "자동 입력 검색 상자 내에서 '이 태그를 만들려면'Enter '를 누르기 만하면됩니다. – disappearedng
제출 버튼이 있으면 제출하지 않은 사용자에게 제출으로 표시됩니다. 생각은 혼란 스럽다. 그러나 그것은 저의 의견 일뿐입니다. 나는 그것을 뒷받침 할 포커스 그룹을하지 않았습니다! :) –