2017-02-18 61 views
-1

如何显示输入#f_past_data当文本#f_past_farmaco被填入?Jquery SHOW输入文本框时的其他输入

#f_past_farmaco是一个文本输入。

我试过这个,但不起作用。

$('label[for=f_past_data], input#f_past_data').hide(); // hiding label 

$("select#f_past_farmaco").change(function(){ 
    $(this).find("value").each(function(){ 
     if($(this).attr("value")!==""){ 
      $('label[for=f_past_data], input#f_past_data').fadeIn(); 
      $('#f_past_data').css('display','block'); 

     } 
     else{ 
      $('label[for=f_past_data], input#f_past_data').fadeOut(); 
      $('#f_past_data').css('display','none'); 
     } 
    }); 
}).change(); 

HTML

<label for="f_past_farmaco">Farmaco </label>   
<input type="text" id="f_past_farmaco" name="f_past_farmaco" value="" class="form-control"> 
<label for="f_past_data">Data </label> 
<input type="date" id="f_past_data" name="f_past_data" value="2017-02-19" class="form-control"> 
+1

f_past_farmaco是一个选择输入? – niceman

+0

检查是否可以运行'$(document).on('keyup click keydown','#f_past_farmaco',function(){' –

+0

您能否展示您的HTML足够多(认为“* [mcve] *”)可以重现您的情况,这使我们能够在将来以特定的帮助和其他访问者的身份为您提供明确,准确的帮助,并提供一个具体的示例来帮助他们制定解决方案。 –

回答

1

change活动仅适用于选择字段和复选框,你需要使用keyup,​​,keypress,试试这个

$(document).on('keyup',"#field1",function(){ 
 
    var val = $(this).val(); 
 
    if(val.length == 0) 
 
    { 
 
      $("#field2").hide(); 
 
    } 
 
    else 
 
    { 
 
      $("#field2").show(); 
 
    } 
 
})
#field2{ 
 
display:none; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 

 
<div> 
 
    <input type="text" id="field1"/> 
 
    <input type="text" id="field2"/> 
 
</div>

0

上一步:请从您的文档中删除任何重复的ID,然后尝试此代码...

$(document).on('keyup click keypress keydown','#f_past_farmaco',function(){ 
     $(this).find("value").each(function(){ 
      if($(this).attr("value")!==""){ 
       $('label[for=f_past_data], #f_past_data').fadeIn(); 
       $('#f_past_data').css('display','block'); 

      }else{ 
       $('label[for=f_past_data], #f_past_data').fadeOut(); 
       $('#f_past_data').css('display','none'); 
      } 
     }); 
    });