总得来说是这样的,通过tigger触发input的keydown事件,keydown事件的触发会导致自动补全触发,现在的情况是通过tigger触发,第一次可以触发到自动补全,但是后面的就不行了,但是input的keydown可以触发,但是如果在input里输入触发keydown事件,自动补全事件都会触发这是怎么回事,明明都是触发了keydown事件,跪求高人指点一二,公司项目急,在线等~~~~代码如下:
************************************************************************************************************
<script type="text/javascript" src="jquery-1.6.2.js"></script>
<script src="jquery.ui.core.js"></script>
<script src="jquery.ui.widget.js"></script>
<script src="jquery.ui.position.js"></script>
<script src="jquery.ui.autocomplete.js"></script>
<script>
$(function() {
var availableTags = [
"ActionScript",
"AppleScript",
"Asp",
];
$( "#autoSearch" )
// don't navigate away from the field on tab when selecting an item
.bind( "keydown", function( event ) {
alert('aaa');
})
.autocomplete({
minLength: 0,
source: function( request, response ) {
$.get('http://baidu.com');
},
select: function( event, ui ) {
this.value = terms.join( ", " );
return false;
}
});
$('#checkbox').change(function(){
if($(this).attr('checked')=='checked'){
$( "#autoSearch" ).trigger('autocomplete');
}
});
$('#clickme').click(function(){
$( "#autoSearch" ).trigger('autocomplete');
return false;
});
});
</script>
<style>
.select{border:1px solid #DDDDDD;width:300px;list-style-type:none;display:none;}
.select li{line-height:25px;}
.current{background:#AAAAAA;}
</style>
</head>
<body>
<input type="checkbox" id="checkbox"/><input type="text" id="autoSearch"/>
</body>

解决方案 »

  1.   

    $( "#autoSearch" ).trigger('autocomplete'); 
    这里改成:
    $( "#autoSearch" ).trigger('keydown'); 
      

  2.   


    $( "#autoSearch" )
    // don't navigate away from the field on tab when selecting an item
    .bind( "keydown", function( event ) {
    alert('aaa');
    })
    .autocomplete({
    minLength: 0,
    source: function( request, response ) {
    $.get('http://baidu.com');
    },
    select: function( event, ui ) {
    this.value = terms.join( ", " );
    return false;
    }
    });改成以下试试?你没有将补全的事件放到keydown触发事件里面$( "#autoSearch" )
    // don't navigate away from the field on tab when selecting an item
    .bind( "keydown", function( event ) {
    $(this).autocomplete({
    minLength: 0,
    source: function( request, response ) {
    $.get('http://baidu.com');
    },
    select: function( event, ui ) {
    this.value = terms.join( ", " );
    return false;
    }
    });
    })