JSON の代わりに XML ドキュメントで fuse.js のように使用することは可能ですか? 現在、私はデータを含む XML ドキュメントしか持っていないので、JSON 用の新しいバージョンも作成しないことを望んでいます。
誰かが私ができる/すべき方向を教えてくれることを願っています。
よろしく、ニールス
JSON の代わりに XML ドキュメントで fuse.js のように使用することは可能ですか? 現在、私はデータを含む XML ドキュメントしか持っていないので、JSON 用の新しいバージョンも作成しないことを望んでいます。
誰かが私ができる/すべき方向を教えてくれることを願っています。
よろしく、ニールス
自分で解決策を見つけました。JSON をhttp://kiro.me/projects/fuse.htmlに配置した例の代わりに、代わりに XML 呼び出しを使用したバージョンを次に示します:)
$(function() {
function start(books) {
var $inputSearch = $('#hero-search'),
$results = $('#results ul'),
$authorCheckbox = $('#value'),
$titleCheckbox = $('#typeId'),
$caseCheckbox = $('#case'),
searchAuthors = true,
searchTitles = false,
isCaseSensitive = false,
fuse;
function search() {
$results.empty();
$.each(r, function(i, val) {
$resultShops.append('<li class="result-item"><a href="' + this.url + '" target="_blank"><span><img src="' + this.statusId + '" /></span> ' + this.value + '</a></li>');
});
}
function createFuse() {
var keys = [];
if (searchAuthors) {
keys.push('value');
}
if (searchTitles) {
keys.push('typeId');
}
fuse = new Fuse(books, {
keys: keys,
caseSensitive: isCaseSensitive
});
}
$inputSearch.on('keyup', search);
createFuse();
}
$.ajax({
type: 'GET',
dataType: 'xml',
url: 'xml-document/document.xml',
success: function(response) {
var suggestions = [];
$(response).find("searchResults").children().each(function(i, elm) {
var name = $(elm).find('name').text();
var url = $(elm).find('url').text();
var description = $(elm).find('description').text();
var statusId = $(elm).find('status').text();
var typeId = $(elm).find('type').text();
var result = {};
result.value = name;
result.url = url;
result.description = description;
result.statusId = statusId;
result.typeId = typeId;
suggestions.push(result);
});
start(suggestions);
},
error: function(response) {
console.log('failure',response);
}
});
});