在Ajax进程之后隐藏响应

时间:2012-06-24 17:18:07

标签: jquery ajax jquery-mobile

在第一个Ajax进程之后,我想在用户再次单击文本字段时隐藏答案。我找不到正确的语法。你能帮帮我吗?

这是我的简化代码......

$('#address').keyup(function () 
{
    $('#check-address').hide();
}); 
$('#address').change(function () 
{
    $('#check-address').hide();
    $('#check-address').listview('refresh');
    $.mobile.showPageLoadingMsg();
    $.ajax({
    ...
        $('#check-address').show();
        $('#check-address').html(response.correct);
        $('#check-address').listview('refresh');
    ...
    });
}); 

修改

这是更多代码......

$('#address').keyup(function () 
{
    $('#check-address').hide();
}); 
$('#address').change(function () 
{
    $('#check-address').hide();
    $('#check-address').listview('refresh');
    $.mobile.showPageLoadingMsg();
    $.ajax({
        type: 'POST',               
        data: 'address=' + $('#address').val(),
        //data: 'address=' + $.trim($('#address').val()),
        url: 'process-address.php',
        dataType: 'json',
        success: function(response) 
        {
            $.mobile.hidePageLoadingMsg();
            if (response.result == 1) 
            {
                $('#check-address').show();
                $('#check-address').html(response.correct);
                $('#check-address').listview('refresh');
                $('#submit').button('enable');
            }
            elseif 
            {
                /***/
            }
        }
    });
}); 

感谢您的精彩解释。 :)

干杯,

文森特

1 个答案:

答案 0 :(得分:0)

在ajax响应中附加一个click事件处理程序

$.ajax({
    ...
        $('#check-address').show();
        $('#check-address').html(response.correct);
        $('#check-address').listview('refresh');
         //bind the click handler here to what ever you want to hide probably you can use .one
    ...
    });

修改

  

在用户再次点击文字字段时隐藏答案。

我假设你的意思是任何文字字段?

 $.ajax({
        ...
            $('#check-address').show();
            $('#check-address').html(response.correct);
            $('#check-address').listview('refresh');
            $(":text").click(function(){$("#answer").hide();});
        ...
        });