0

get取得したデータに応じて、jQuery リクエストに条件を付けたいと考えています。

これが私の機能です:

function validateForm() {
    var username = $('#username').val()
    var result = ''

    $.get(
        '/auth_validate_username/', 
        { 'result': result }, 
        function(data) {
            $.post(
                '/auth_validate_username/', 
                { 'username': username }, 
                function(data) { 
                    $('.error_message').html(data); 
                }
            );
        }
    );
    return false;
};

HTML:

<form  method="post" onsubmit="return validateForm();">
    <input id='username' type="text" name="username"/>
    <div class='error_message'></div>
    <button type="submit">Valider</button>
</form> 

resultI get with my getfunction が空でない場合、フォームが送信されないように条件を設定したいと思います。しかし、場合result != ''は、フォームを送信したいです。

getリクエスト内のフォームに条件を付ける方法について何か考えはありますか?

4

1 に答える 1

3

リクエスト後に実行される関数では、get任意の JavaScript ステートメントを実行できます。含むif

function validateForm() {
    var username = $('#username').val()
    var result=''

    $.get(
        '/auth_validate_username/', 
        { 'result': result }, 
        function(data) {

            // Magical line there
            if (data !== '') {

                $.post(
                    '/auth_validate_username/', 
                    { 'username': username }, 
                    function(data) { 
                        $('.error_message').html(data);
                    }
                );
            }
        }
    );
    return false;
};
于 2012-12-20T09:12:26.360 に答える