我有一个jQuery搜索脚本,可以将PHP文件的结果解析为HTML div。我希望在没有活动查询时自动选择搜索框,并且在查询处于活动状态时不选择搜索框。我怎样才能做到这一点?我希望你能理解我的问题。
我的jQuery搜索脚本是:
$(document).ready(function(){
$('[id^=type_]').click(function(){
type=this.id.replace('type_','');
$('[id^=type_]').removeClass('selected');
$('#type_'+type).addClass('selected');
return false;
});
$('#type_search').click();
$('#query').keyup(function(){
var query=$(this).val();
var url='/'+type+'/'+query+'/';
window.location.hash=''+type+'/'+query+'/';
document.title=$(this).val()+' - My Search';
$('#results').show();
if(query==''){
window.location.hash='';
document.title='My Search';
$('#results').hide();
}
$.ajax({
type:'GET',
url:url,
dataType:'html',
success:function(results){
$('#results').html(results);
}
});
});
if(window.location.hash.indexOf('#'+type+'/')==0){
query=window.location.hash.replace('#'+type+'/','').replace('/','');
$('#query').val(decodeURIComponent(query)).keyup();
}
});
答案 0 :(得分:1)
此ajax编辑将在查询期间正确禁用和启用/聚焦#query字段
$.ajax({
type:'GET',
url:url,
dataType:'html',
beforeSend:function(){
$('#query').prop('disabled',true);
},
success:function(results){
$('#results').html(results);
$('#query').prop('disabled',false).focus();
}
});
编辑:根据您的评论请求将其添加到$(document).ready
函数的底部(内部):
if($('#results').html() == '')
{
$('#query').focus();
}