删除jQuery自动完成值时删除隐藏值字段

时间:2017-05-29 17:34:12

标签: jquery jquery-ui

我有一个jQuery ui自动完成功能,显示公司的名称,在隐藏的文本框中,我得到了CompanyNumber(我工作的公司用来识别每个公司的特殊ID),一切正常,它检索并显示公司名称并在隐藏字段中获取到期的CompanyNumber ......但

问题:当用户删除公司名称时,隐藏字段中的companyNumber值仍然存在,我希望它也消失,怎么能实现呢?有什么帮助吗?

这是我的jQuery代码和两个字段

<script type="text/javascript">
        $(document).ready(function () {
            $("#SearchString").autocomplete({
                source: function (request, response) {
                    $.ajax({
                        url: '@Url.Action(actionName: "autocompletar", controllerName: "Borrar")',
                        type: "GET",
                        dataType: "json",
                        data: { prefix: request.term },
                        success: function (data) {
                            response($.map(data, function (item) {
                                return { value: item.np, label: item.empresa };
                            }))
                        }
                    })
                },
                select: function (event, ui) {
                    if (ui.item) {
                        $("#numeroPatronal").val(ui.item.value);
                        $("#SearchString").val(ui.item.label);
                        event.preventDefault();
                        return false;
                    }
                },
                focus: function (event, ui) {
                    $("#numeroPatronal").val(ui.item.value);
                    // $("#txtmasterserach").val(ui.item.label);
                    event.preventDefault();
                    return false;
                },
                messages: {
                    noResults: "", results: ""
                },
                error: function (response) {
                    alert("Error" + res.responseText);
                }
            });
        });
    </script>



 <div class="container col-md-10 col-md-offset-3">
        @using (Html.BeginForm())
        {
       <p> Empresa: @Html.TextBox("SearchString") </p>
       <p> Número Patronal: @Html.TextBox("numeroPatronal") </p>
    <input type="submit" value="submit" />
        }
    </div>

首先,我从自动填充字段中选择所需的公司enter image description here

一旦选择了公司名称,并使用适当的信息填写companyNumber字段(这两个字段有信息,但我刚刚删除,因为它不公开) enter image description here

但是,如果我从自动填充文本框中删除公司名称,公司的公司号码就会删除reamins,我希望它也消失了 enter image description here

jQuery函数

 $('#SearchString').on('input', function () {
                if (!$('#SearchString').val()) {
                    $('#numeroPatronal').val('');
                }
            })

1 个答案:

答案 0 :(得分:0)

这个例子可以帮助你,因为我看不到你的HTML代码,只是在你的输入中输入不同的id,然后在第一个输入为空时添加一个fun fetch_data(callback: (JSONArray) -> Unit) { // ... listener?.onTaskCompleted(response) callback(response) // ... } 事件,同时清空第二个输入

input
$(document).ready(function() {

  $('#input1').on('input', function() {
    if (!$('#input1').val()) {
      $('#input2').val('');
    }
  })

});