-7

重複の可能性:
ページをリロードせずにフォームを送信する

こんにちは、リロードせずにフォームを送信する必要があります。javascript またはフレームを使用してこれを行うにはどうすればよいですか?

ありがとう

4

3 に答える 3

4

これは、jQuery を使用して行うことができます: http://jquery.com/

これは JavaScript フレームワークであり、この種のことを行うために使用できるメソッドの 1 つは次のとおりです。

$('#formID').submit(function(){

    var ajaxURL = '/ajax/saveAccountSettings.php';

    $.ajax({
        type: 'POST',
        url: ajaxURL,
        data: { 
            username: $('#accountForm #username').val()
        },
        success: function(data){

                        //Do something

        }
    });

    return false;

});

ただし、最初にjqueryの使用方法を読む価値があるでしょう...

于 2012-05-12T17:45:46.547 に答える
0

iframe で何かをしようとするよりも、JavaScript をお勧めします。あなたが探しているのは XHRRequest です。最も簡単な解決策はJQueryを使用することです。簡単な例を書くつもりでしたが、このチュートリアルは手順をかなりうまくカバーしているようです。

于 2012-05-12T17:48:24.147 に答える
0

jQueryjQuery Form Pluginを使用できます。

jQuery Form Plugin のajaxForm機能を使用すると、HTML 内のフォームを「乗っ取る」ことができます。次の例を検討してください。

<html> 
<head> 
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.js"></script> 
    <script src="http://malsup.github.com/jquery.form.js"></script> 

    <script> 
        // wait for the DOM to be loaded 
        $(document).ready(function() { 
            // bind 'myForm' and provide a simple callback function 
            $('#myForm').ajaxForm(function() { 
                alert("Thank you for your comment!"); 
            }); 
        }); 
    </script> 
</head>
<body>
    <form id="myForm" action="comment.php" method="post"> 
    Name: <input type="text" name="name" /> 
    Comment: <textarea name="comment"></textarea> 
    <input type="submit" value="Submit Comment" /> 
</form>
</body>
</html>

詳細については、プラグインの Web サイトを参照してください。エラー処理などのさまざまなコールバック関数をサポートしています。

于 2012-05-12T17:49:14.667 に答える