1

みなさん、こんにちは。jQueryフォームプラグインを使用してページのフォーム送信(http://malsup.github.com/jquery.form.jsにあります)を処理していましたが、純粋にjQuery AJAXベースのメソッドを使用するように切り替える必要があります(任意のフォームプラグインを使用しますが、jQueryを使用できます)。これを達成するための最良の方法は何でしょうか?私はそれを翻訳するのに苦労しています。理想的なソリューションはどのようになりますか?

これは私が現在使用しているコードです:

// prepare the form when the DOM is ready 

$(document).ready(function() { 
var options = { 
    target:        '#result',  
    beforeSubmit:  showRequest,  
    success:       showResponse   
}; 

// bind to the form's submit event 

$('#booking').submit(function() { 
    $(this).ajaxSubmit(options); 
    return false; 
    }); 
});  

// pre-submit callback 

function showRequest(formData, jqForm, options) { 
    var queryString = $.param(formData); 
    // alert('About to submit: \n\n' + queryString); 
}

// post-submit callback 

function showResponse(responseText, statusText, xhr, $form)  {
    $('#last-step').fadeOut(300, function() {
    $('#result').html(responseText).fadeIn(300);
    });
}
4

1 に答える 1

1

あなたはこのようなことをすることができます:

$.ajax({
    url: 'process.php',
    data: $('form[name="booking"]').serialize(),
    dataType: 'html',
    type: 'POST',
    success: function(data) {
        $('#last-step').fadeOut(300, function() { $('#result').html(data).fadeIn(300);
    },
    complete: function (data) {
        // your code here
    },
    error: function (url, XMLHttpRequest, textStatus, errorThrown) {
        alert("Error: " + errorThrown);
    }
});
  • データパラメータは次のようになります:'param1 = value1&param2 = value2&param3 = value3'
  • タイプは次のとおりです。POSTまたはGET
  • dataTypeには、json、html、xmlなどがあります。

詳細については、次のURLを参照してください:http://api.jquery.com/jQuery.ajax/

于 2012-03-30T18:26:38.033 に答える