【发布时间】:2015-01-23 11:47:42
【问题描述】:
当用户在文本框中输入超过 5 个字符时,我正在尝试运行 jQuery 函数。到目前为止,我已经设法让我的脚本使用 keyup 函数运行,但这会导致脚本在用户输入第一个字符的那一刻运行,我只希望它在用户输入 5 或更多时运行字符。
这是我的代码,我是 jquery 的新手,所以如果有人能告诉我我哪里出了问题,我将不胜感激。提前致谢,
<script type="text/javascript">
$(function() {
//alert('Document is ready');
$('#search').keyup(function() {
if ($("#search").val().length > 3)
var sel_stud = $(this).val();
//alert('You picked: ' + sel_stud);
$.ajax({
type: "POST",
url: "include/fetch_search.php",
data: 'theOption=' + sel_stud,
success: function(whatigot) {
//alert('Server-side response: ' + whatigot);
$('#search_results').html(whatigot);
$('#theButton').click(function() {
alert('You clicked the button');
});
} //END success fn
}); //END $.ajax
})}; //END dropdown change event
}); //END document.ready
</script>
【问题讨论】:
-
你忘记了括号并放置了 3 而不是 5 ...我认为问题在于
-
要添加到已经提到的解决方案,如果您的用户不断输入您的 ajax 调用将触发很多次。您应该考虑到这一点,并且每个时间间隔(或按下的键)只进行一次 ajax 调用。
标签: jquery