2017-05-29 93 views
0

我确实有一个jQuery UI自动完成功能,显示公司名称和隐藏文本框我得到CompanyNumber(我工作的公司使用的特殊ID来标识每个公司),一切工作正常,它检索并显示公司名称,并在隐藏字段中获取适当的CompanyNumber ...但删除jQuery自动完成值时删除隐藏值字段

问题:当用户删除公司的名称时,隐藏字段中的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

但如果我从自动完成文本中删除公司名称箱公司的CompanyNumber只是删除reamins,我希望它自败也 enter image description here

jQuery函数

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

回答

0

这个例子应该可以帮助你,因为我看不到你的HTML代码,只需把将不同的id添加到您的输入中,然后将第一个输入为input的事件添加到第一个输入,当第一个输入为空时,也会清空第二个输入。

$(document).ready(function() { 
 

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

 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 

 
<div>Input 1: <input id="input1" value="11111"></div> 
 
<div>Input 2: <input id="input2" value="22222"></div>

+0

感谢,我敢肯定我没有解释好,我要的是,当用户删除/选择并删除/ SUPR从自动完成所选的值下拉列表中,由于CompanyNumber也消失了,我只是编辑了我的问题,在companyName中没有任何价值的图片(因为我已删除),并且仍然具有CompanyNumber中的值...感谢任何帮助 –

+0

@PabloTobar能否显示呈现的HTML?就像在浏览器中检查那些输入 –

+0

当然,我只是编辑了我的问题,谢谢。 –