javascript - 如何使用ajax和xml将自动完成搜索中的值放入隐藏字段

标签 javascript html ajax autocomplete

我在表单中使用下面的脚本。我需要按国家/地区名称从 xml 文档中获取内容,然后将 gennameId 放入隐藏文件中。自动完成 searchrh 工作正常,问题是如何将 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="">

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

最佳答案

        $("#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) {
                $("input[name='result']").val(ui.item ? ui.item.id : "Nothing selected, input was " + this.value);
            }
        });

关于javascript - 如何使用ajax和xml将自动完成搜索中的值放入隐藏字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19132335/

相关文章:

javascript - 从 radialBar Apexcharts 中删除额外的空间

javascript - 如何检查用户并通过然后重定向

css - div 内的空间元素

javascript - 如何做一个计数器计时器,它在结束时会显示一个 div,它会保持一段时间并再次重新启动

javascript - 设置容器的高度以容纳动态大小的小部件

javascript - 500(内部服务器错误)jQuery ajax ui 自动完成 codeigniter

javascript - 如果发生验证错误,Ajax 表单将发送两次

javascript - 如何仅使用 Javascript 取消绑定(bind)添加到窗口的滚动事件?

javascript - 如何使用对象元素可用的最低可能序列更新数组中的对象元素?

javascript - 如何避免每次创建要部署在 glassfish 上的新 Java EE 包时复制整个 dojo 库?