XML 태그 및 속성을 자동 완성하려고합니다. 유효한 값은 서버에서 가져옵니다. 예를 들어,Ace 편집기에서 XML 값 및 속성 자동 완성
내가 같은 태그가있는 경우,
<status></status>
내 커서가 열린 태그와 닫는 태그 안에, 내가
control + space
를 치고 좋아하고있다 유효한 값은 드롭에 표시 만 것 하위. 예를 들면 : 내 커서가 따옴표 안에 초점을 맞출 경우
ok
,
error
,
warning
는 ...
속성 마찬가지로
,
<status audience="">ok</status>
나는 경우 드롭 다운에 표시에만 유효 관객을 싶습니다 타격 control + space
.
여기까지 제가 지금까지 가지고 있습니다. 이 완성자는 내가 입력하는 단어를 완성합니다. 나는 내부에있는 태그의 종류와 해당 태그 또는 속성에 대한 특정 값을 보내는 방법을 아는 방법을 파악할 수 없습니다.
나를 가리키는 아이디어 나 예가 있습니까? 감사합니다./w
function loadEditor() {
var langTools = ace.require("ace/ext/language_tools");
editor = ace.edit("editor");
editor.setOptions({
enableBasicAutocompletion: true,
enableLiveAutocompletion: true,
enableSnippets: true,
});
editor.getSession().setMode("ace/mode/xml");
var myCompleter = {
getCompletions: function(editor, session, pos, prefix, callback) {
if (prefix.length === 0) {
callback(null, []);
return;
}
$.getJSON("completions.php?a=completions&prefix="
+ prefix + "&content=" + session, function(json) {
callback(null, json.map(function(c) {
console.log("value: " + c.value);
return {value: c.value, caption: c.caption, meta: c.meta, score:c.score};
}));
})
}
};
langTools.addCompleter(myCompleter);
}