Javascript 从xml内容搜索自动完成,然后放入隐藏字段

Javascript 从xml内容搜索自动完成,然后放入隐藏字段,javascript,jquery,xml,autocomplete,Javascript,Jquery,Xml,Autocomplete,是否有从xml自动完成搜索然后将值放入隐藏字段的示例脚本 xml示例: <geoname><name>London</name><geonameId>2643743</geonameId><countryCode>GB</countryCode><countryName>United Kingdom</countryName></geoname> London2643743G

是否有从xml自动完成搜索然后将值放入隐藏字段的示例脚本

xml示例:

<geoname><name>London</name><geonameId>2643743</geonameId><countryCode>GB</countryCode><countryName>United Kingdom</countryName></geoname>
London2643743GB英国
在搜索名称时,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>

$(窗口)。加载(函数(){
$.ajax({
键入:“获取”,
url:“Region.xml”,//更改为服务器上文件的完整路径
数据类型:“xml”,
成功:函数(xmlResponse){
var data=$(“geoname”,xmlResponse).map(函数(){
返回{
值:$(“名称”,this).text(),
id:$(“geonameId”,this).text()
};
}).get();
$(“#测试”)。自动完成({
来源:功能(请求、响应){
var re=$.ui.autocomplete.escapeRegex(请求期限);
var matcher=newregexp(“^”+re,“i”);
响应($.grep(数据、功能(项目)){
返回匹配器测试(项值);
}));
},
最小长度:2,
选择:功能(事件、用户界面){
$(“#结果”).html(ui.item?ui.item.id:“未选择任何内容,输入为”+此.value);
}
});
}
});
}); 
html



如何将结果(geonameId)放入隐藏字段?

请粘贴您尝试的代码。我认为您已经这样做了,但您应该使用
$(“#result”).attr('value',ui.item?ui.item.id:“未选择任何内容,输入为”+此.value)
<div class="ui-widget">

    <input id="test" />
</div>

<input type="hidden" name="result" value="">