2
이 질문에 대한 기존 답변이 누락되지 않았 으면 좋겠다. 임 프론트 엔드 양식에서 카테고리 선택을 제공하기 위해 jquery UI 자동 완성을 사용하는 WordPress 테마로 작업. 코드는 다음과 같습니다. 문제는 카테고리 이름이 & 인 경우 문자를 표시 할 수없고 대신 자동 완성 상자에 &
이 표시된다는 것입니다. 캐릭터를 제대로 보여줄 수 있습니까? `WordPress의 jQuery 자동 완성 및 특수 문자
jQuery(function(){
/* Auto Complete */
var availableTags = [
<?php
$terms_array = array();
$terms = get_terms('majors', 'hide_empty=0');
if ($terms) foreach ($terms as $term) {
$terms_array[] = '"'.$term->name.'"';
}
echo implode(',', $terms_array);
?>
];
function split(val) {
return val.split(/,\s*/);
}
function extractLast(term) {
return split(term).pop();
}
jQuery("#majors_wrap input").live("keydown", function(event) {
if ((event.keyCode === jQuery.ui.keyCode.TAB || event.keyCode === jQuery.ui.keyCode.COMMA) &&
jQuery(this).data("autocomplete").menu.active) {
event.preventDefault();
}
}).autocomplete({
minLength: 0,
source: function(request, response) {
// delegate back to autocomplete, but extract the last term
response(jQuery.ui.autocomplete.filter(
availableTags, extractLast(request.term)));
},
focus: function() {
jQuery('input.ui-autocomplete-input').val('');
// prevent value inserted on focus
return false;
},
select: function(event, ui) {
var terms = split(this.value);
// remove the current input
terms.pop();
// add the selected item
terms.push(ui.item.value);
// add placeholder to get the comma-and-space at the end
terms.push("");
//this.value = terms.join(", ");
this.value = terms.join("");
jQuery(this).blur();
jQuery(this).focus();
return false;
}
});
});
</script>`
감사합니다. 나는 다른 용어가있는 새로운 라인에 퍼팅을 시도했다. 푸시 물건은 물론 기존의 것들을 대체하려고 시도했다. 이 모든 것이 자동 완성 정지 기능을 작동 시켰습니다. 아마 내가 무엇을하고 있는지 알지 못하기 때문에 :-) 내가 어디에 두어야 할까? 오, 내가 추가해야한다. 실제로 자동 완성 상자에 '&'이 표시된다. 실제로 선택을하면 & ... 그래서 자동 완성 제안에 잘못 표시된다. – LJC