2013-04-22 2 views
0

У меня есть форма с расширенными возможностями. Дополнительные параметры находятся в div (скрытом). Когда вводится поле ввода «Поиск», я хотел бы скрыть div, используя slidedown. Вот код (частично взяты из другого источника: jQuery slideDown with forms):JQuery SlideDown on KeyPress

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml" lang="en"> 
<head> 
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script> 
    <script src="http://code.jquery.com/jquery-1.9.1.js"></script> 
    <script src="http://api.jquery.com/resources/events.js"></script> 
    <script type="text/javascript"> 
$("#searched").keypress(function(event) { 
    if (event.which == 13) { 
    event.preventDefault(); 
    } 
     $("#advanced").slideDown(); 

}); 
    </script> 
</head> 
<body> 

<div id="content"> 
<form action="mycontrolleraddress" method="post" accept-charset="utf-8" name="search_form" id="search_form"> 

<input type="text" name="query" value="" placeholder="Search..." id="searched"/><br/> 

<div id="advanced" style="display: none;"> 
    From: <input type="text" name="date_from" value="" id="datepicker" onchange="validateDate();" class="datefield" /><br/> 
    To: <input type="text" name="date_to" value="" id="datepicker2" onchange="validateDate();" class="datefield" /> <br/> 
</div> 
<input type="submit" name="submit" value="Submit" /> 

</div> 

</body> 
</html> 

ответ

1

Оберните кода $(document).ready(function(){});

+0

@KenJ рад, что это помогло, пожалуйста, отметьте ответ как принятый, если он решит вашу проблему :) – 2013-04-22 18:43:35

0

использование внутри $(function() {}); или $(document).ready(function() {});

<script type="text/javascript"> 
    $(function() { 
$("#searched").keypress(function(event) { 
    if (event.which == 13) { 
    event.preventDefault(); 
    } 
     $("#advanced").slideDown(); 

}); 
}); 
    </script> 
0
$('#search_form').on('focus', '#searched', function(e){ 
    $('#advanced').slideDown(); 
}) 
0

Решение является обернуть JavaScript код внутри этого:

$(document).ready(function(){ 
    // your code 
});