c# - 使用 jquery 将值设置为隐藏字段在自动完成期间不起作用

标签 c# jquery html jquery-ui asp.net-mvc-4

有一个简单的表单,它将 get-request 发送到服务器。

<form id="form0" method="get">
  <input id="searchTerm" type="hidden" name="searchTerm">
  <input type="search" id="userSearchTerm" />
  <input type="submit" value="submit" />
</form>

我使用 jquery-ui auto-complete 从服务器获取 json 数据,是的,它工作正常。

<script type="text/javascript">
$(document).ready(function () {
    $("#userSearchTerm").autocomplete({
        source: function (request, response) {
            $.ajax({
                url: "/Home/AutoComplete",
                type: "POST",
                dataType: "json",
                data: { term: request.term },
                success: function (data) {
                    alert("successfully got the data");
                    response($.map(data, function (item) {
                        return { name: item.name, value: item.age };
                    }))

                }
            })
        },
        select: function (e, ui) {
            alert(ui.item.name);
            $('#searchTerm').val(ui.item.name);
            $("#form0").submit();
        }


    });
    return false;
})

我收到诸如“成功获取数据”以及“项目名称”之类的警报消息。还使用 Google Chrome 下的 Network 选项卡进行检查 -> json 响应就在那里。

问题是,我无法提交表单。如果我删除该行, $('#searchTerm').val(ui.item.name); 表单将被提交,一切都很好。

有人能给我指出正确的方向吗?为什么这个简单的 javascript 没有运行?

最佳答案

尝试将 ui.item.name 替换为 ui.item.value,例如

 select: function (e, ui) {
     alert(ui.item.value);
     $('#searchTerm').val(ui.item.value);
     $("#form0").submit();
 }

<强> Fiddle

关于c# - 使用 jquery 将值设置为隐藏字段在自动完成期间不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19287302/

相关文章:

php - 如何将^符号转换为html上标?

php - HTMLPurifier 与 Kses

c# - 通用 Windows 10 WebView - 如何清除/禁用缓存?

c# - 取消自动完成字段的任务不会取消所有以前的任务

c# - 使用 WebService 上传文件

jquery - 使用 ajax 时,在 iOS 中按住文本不会在 jQueryMobile 对话框中显示 'copy' 按钮

jquery.animate 只工作一次

c# - Relax C# LINQ 字符串比较(修剪、不区分大小写、??)

javascript - 如何将 JavaScript 附加到包含用单引号引起来的属性定义的页面 html?

javascript - 应用 border-left 时 Css3 html5 Div 对齐中的意外问题