xml からのオートコンプリート検索のサンプル スクリプトはありますか? 非表示フィールドに値を入力しますか?
xml の例:
<geoname><name>London</name><geonameId>2643743</geonameId><countryCode>GB</countryCode><countryName>United Kingdom</countryName></geoname>
名前を検索すると、geonameId 値が隠しフィールドに入れられます。
JavaScript:
<script type='text/javascript'>
$(window).load(function(){
$.ajax({
type: "GET",
url: "Region.xml", // change to full path of file on server
dataType: "xml",
success: function(xmlResponse) {
var data = $("geoname", xmlResponse).map(function() {
return {
value: $("Name", this).text() ,
id: $("geonameId", this).text()
};
}).get();
$("#test").autocomplete({
source: function(req, response) {
var re = $.ui.autocomplete.escapeRegex(req.term);
var matcher = new RegExp("^" + re, "i");
response($.grep(data, function(item) {
return matcher.test(item.value);
}));
},
minLength: 2,
select: function(event, ui) {
$("#result").html(ui.item ? ui.item.id : "Nothing selected, input was " + this.value);
}
});
}
});
});
</script>
html
<div class="ui-widget">
<input id="test" />
</div>
<input type="hidden" name="result" value="">
結果(geonameId)を非表示フィールドに入れる方法は?