1

在第一个 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 
            {
                /***/
            }
        }
    });
}); 

感谢您的精彩解释。:)

干杯,

文森特

4

1 回答 1

0

在 ajax 响应中附加点击事件处理程序

$.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();});
        ...
        });
于 2012-06-24T17:24:32.670 回答