使用jQuery自动选择页面加载上的文本框

时间:2011-07-10 16:27:10

标签: javascript jquery html

我有一个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();
    }
});

1 个答案:

答案 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();
}