1
function DoAjax( args )
{
    var formData = "?" + $("form[name=" + args.formName + "]").serialize();

    $.ajax({
        type: "POST",
        url: args.url + formData,
        data: {
            request: args.request
        },
        success: function (data) {
            alert(data);
            args.callback.html(data);
        },
        error: function (a, b, c) {
            alert("error: " + a + ", " + b + ", " + c + ".");
        }
    });

    return false;       
}   

「request」と呼ばれるカスタムビットのデータをphpスクリプトに渡す必要があります。これは、phpページで実行するプロセスを示します...しかし、フォーム上の他のフォームフィールドもシリアル化したいです。PHP $ _POST ["whatever"]から何も取得できないように見えるので、これは正しい方法ですか(URLの最後にシリアル化を追加します)。

編集:::///

<?php                                 
    $request = $_POST[ "request" ];   

    if( isset( $request ) )
    {
        require_once( "includes.php" );

        function LogInWithClientCred()
        {
            $username = CheckIsset( "username" );
            $password = CheckIsset( "password" );

            echo $_REQUEST["username"];
            echo $_GET["username"]; // echos correctly the username.. but I want it to be post data instead!

セキュリティの素晴らしさを無視してください、それはあなたの目的のために疑似です。

4

2 に答える 2

2

formDataと追加のデータを1つの文字列に結合します。

var formData =  $("form[name=" + args.formName + "]").serialize() + "&request=" + args.request;

$.ajax({
    url: args.url,
    data: formData,
    type: "POST",
    ...
})
于 2013-03-18T17:43:32.223 に答える
0

よくわからないのですが、フォームデータをURLに追加し、ajaxでPOSTを使用していると思います。

やってみませんか

$ _REQUEST ["whatever"]を使用して、取得しているものを確認します

編集 commnetsを見た後、私は今それを手に入れたと思います

 function DoAjax( args )
{
    var formData =  $("form[name=" + args.formName + "]").serialize();

    $.ajax({
        type: "POST",
        url: args.url,
        data: {
            request: args.request,
        formData:formData
        },
        success: function (data) {
            alert(data);
            args.callback.html(data);
        },
        error: function (a, b, c) {
            alert("error: " + a + ", " + b + ", " + c + ".");
        }
    });

    return false;       
}   

これで、$ _POST[formData]が機能するはずです

編集 これも参照してください

github.com/maxatwork/form2js

于 2013-03-18T17:17:35.480 に答える