总得来说是这样的,通过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>
************************************************************************************************************
<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>
这里改成:
$( "#autoSearch" ).trigger('keydown');
$( "#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;
}
});
})