javascript
  • html
  • html5
  • 2017-04-04 73 views -3 likes 
    -3

    我试图用JavaScript隐藏下拉框,一旦有人在textarea中输入文本。在textarea中输入值时隐藏下拉框

    这是我做过什么,到目前为止:

    HTML

    <table> 
        NOTES OF A POST MORTEM EXAMINATION ON THE BODY OF A<br> 
        <select name="select86" id="travel_arriveVia" onchange='CheckColors86(this.value);'> 
         <option>Select</option> 
         <option value="Cattle">Cattle</option> 
         <option value="Buffalo">Buffalo</option> 
         <option value="Horse">Horse</option> 
         <option value="Camel">Camel</option> 
         <option value="Dog">Dog</option> 
         <option value="Sheep">Sheep</option> 
         <option value="Pig">Pig</option> 
         <option value="Goat">Goat</option> 
         <option value="Deer">Deer</option> 
         <option value="Others">Others</option> 
        </select> 
        <tr> 
         <td></td> 
         <td></td> 
         <td></td> 
         <td>  
          <textarea rows="3" cols="25" name="div86" id="color86" style='display:none'></textarea> 
         </td> 
        </tr> 
    </table> 
    

    的JavaScript

    function CheckColors86(val) 
    { 
        var element=document.getElementById('color86'); 
         if(val=='Others') 
         element.style.display='block'; 
        else 
         element.style.display='none'; 
    } 
    

    回答

    0

    如果你可以使用jQuery你可以做这样的:

    $('#color86').keyup(function() { 
        $('#travel_arriveVia').css('display', 'none'); 
    }); 
    


    这里的jsfiddle: https://jsfiddle.net/ezd5ajmf/

    或者像段:

    $('#color86').keyup(function() { 
     
        $('#travel_arriveVia').css('display', 'none'); 
     
    });
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
     
    <table> 
     
        NOTES OF A POST MORTEM EXAMINATION ON THE BODY OF A<br> 
     
        <select name="select86" id="travel_arriveVia"> 
     
         <option>Select</option> 
     
         <option value="Cattle">Cattle</option> 
     
         <option value="Buffalo">Buffalo</option> 
     
         <option value="Horse">Horse</option> 
     
         <option value="Camel">Camel</option> 
     
         <option value="Dog">Dog</option> 
     
         <option value="Sheep">Sheep</option> 
     
         <option value="Pig">Pig</option> 
     
         <option value="Goat">Goat</option> 
     
         <option value="Deer">Deer</option> 
     
         <option value="Others">Others</option> 
     
        </select> 
     
        <tr> 
     
         <td></td> 
     
         <td></td> 
     
         <td></td> 
     
         <td>  
     
         <textarea rows="3" cols="25" name="div86" id="color86"></textarea> 
     
         </td> 
     
    </table>

    1

    function CheckColors86(val) 
     
    { 
     
    
     
        var element=document.getElementById('color86'); 
     
         if(val=='Others') 
     
         element.style.display='block'; 
     
        else 
     
         element.style.display='none'; 
     
    } 
     
    function hideDropDown(){ 
     
        var element=document.getElementById('travel_arriveVia'); 
     
        element.style.display='none'; 
     
    } 
     
    function showDropDown(){ 
     
        var element=document.getElementById('travel_arriveVia'); 
     
        element.style.display='block'; 
     
    }
    <table> 
     
         NOTES OF A POST MORTEM EXAMINATION ON THE BODY OF A<br> 
     
         <select name="select86" id="travel_arriveVia" onchange='CheckColors86(this.value);'> 
     
             <option>Select</option> 
     
             <option value="Cattle">Cattle</option> 
     
             <option value="Buffalo">Buffalo</option> 
     
             <option value="Horse">Horse</option> 
     
             <option value="Camel">Camel</option> 
     
             <option value="Dog">Dog</option> 
     
             <option value="Sheep">Sheep</option> 
     
             <option value="Pig">Pig</option> 
     
             <option value="Goat">Goat</option> 
     
             <option value="Deer">Deer</option> 
     
             <option value="Others">Others</option> 
     
            </select> 
     
            <tr> 
     
           <td></td><td></td><td></td> 
     
           <td>  
     
            <textarea rows="3" cols="25" name="div86" id="color86" onfocus='hideDropDown()'></textarea> 
     
    
     
           </td> 
     
           </table>

    希望这有助于你出去。

    +0

    感谢ü这么多...它的工作:) –

    +0

    请标明这个答案是正确的,给予好评:) –

    +0

    其工作但是当点击textarea的外部时,它会再次显示隐藏的下拉框....如何解决它 –

    0

    添加以下功能的Java脚本,并调用它keyup事件如下

    <textarea rows="3" cols="25" name="div86" id="color86" style='display:none' onkeyup="toggleListOption();"></textarea> 
    
    
    function toggleListOption(){ 
        var el=document.getElementById('color86'); 
        if(el.value===""){ 
         document.getElementById('travel_arriveVia').style.display='block'; 
        }else{ 
         document.getElementById('travel_arriveVia').style.display='none'; 
        } 
    } 
    
    相关问题