Jquery元素val()不在正确的位置?
为什么jQuery报告搜索字段的值比字段的实际值落后一步?在这里,它在一个盒子里Jquery元素val()不在正确的位置?,jquery,html,Jquery,Html,为什么jQuery报告搜索字段的值比字段的实际值落后一步?在这里,它在一个盒子里 $('.search')。每个(函数(){ var search_type=$(this.attr('name'); $(此).keydown(函数(e){ 变量参数={ “搜索类型”:搜索类型, 'q':$(this.val() }; $(“#结果”).text(params.q); }); }); 使用键控事件。这将获得更新的值 以下是事件的解释:使用keyup事件。这将获得更新的值 以下是对事件的解释:因
$('.search')。每个(函数(){
var search_type=$(this.attr('name');
$(此).keydown(函数(e){
变量参数={
“搜索类型”:搜索类型,
'q':$(this.val()
};
$(“#结果”).text(params.q);
});
});
使用键控事件。这将获得更新的值
以下是事件的解释:使用keyup事件。这将获得更新的值
以下是对事件的解释:因为您使用的是keyup,所以使用keydown将提供这种行为。因为按键一按下就会触发keydown,但值尚未更新。键控时,值已更新
因为您使用的是keyup,所以使用keydown将提供这种行为。因为按键一按下就会触发keydown,但值尚未更新。键控时,值已更新
<input type="search" class="search" name="test">
<p id="result"></p>
<script>
$('.search').each(function () {
var search_type = $(this).attr('name');
$(this).keydown(function (e) {
var params = {
'search_type': search_type,
'q': $(this).val()
};
$('#result').text(params.q);
});
});
</script>
$(this).keyup(function (e) {
var params = {
'search_type': search_type,
'q': $(this).val()
};
$('#result').text(params.q);
});