Нажмите на текстовое поле, чтобы показать div? - PullRequest
0 голосов
/ 08 сентября 2011

У меня есть текстовая область:

<textarea cols="10" rows="5">Type in the text</textarea>

Я хочу показать div (или <span>) ниже текстовой области при нажатии на текстовую область.

Как я мог это сделать?

Также я хотел бы скрыть это при нажатии на ссылку в div (или span).

Ответы [ 2 ]

5 голосов
/ 08 сентября 2011

Самый простой способ - указать идентификатор вашего диапазона, а затем:

<textarea cols="10" rows="5" onclick="document.getElementById('box').style.display='inline';">Type your text here</textarea>
<span id="box" style="display:none">display</span>
3 голосов
/ 08 сентября 2011

Если вы используете jQuery, тогда все просто:

$("textarea").bind("focus", function(){
    $("span").show();
});

Тогда для ссылки дайте ей идентификатор в HTML:

<span>
    <a href="#" id="closeme">Close me</a>
</span>

А потом:

$("#closeme").bind("click", function(){
    $("span").hide();
});

Помните, что Javascript должен входить в теги <script></script>, а также обеспечивать включение jQuery на страницу, используя:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>

Если вы новичок в jQuery, то приведенный ниже код должен дать вам представление о том, как начать работу. Как правило, лучше ссылаться на элементы, использующие идентификаторы, а не их имена тегов, такие как textarea и span - это будет означать, что javascript будет нацелен на нужные элементы. Что-то вроде этого будет делать то, о чем вы спрашиваете:

<html lang="en"> 
<body>

    <textarea id="form-details"></textarea>
    <span id="form-details-info">
        Some info about the textarea
        <br/>
        <a href="#">Close text area</a>
    </span>

    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>    
    <script>
        $(function(){

           // When a user is using the textarea 
           $("#form-details").bind("focus", function(e){
               // Show the span info
               $("#form-details-info").show();
           });

           // When a user clicks the close link
           $("#form-details-info a").bind("click", function(e){e){

               // Hide the info
              $("#form-details-info").hide();

              // And use this to stop a prevent a link from doing what it normally does..
              e.preventDefault(); 
           });

        });
    </script>
</body>
</html>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...