1

非表示のフォームを使用して投稿リクエストを送信することを目的とした次のメソッドを取得しました。このリクエストは、ファイルをダウンロードするためのもので、URL はありませんが、バイナリ ファイル ストアから動的に取得されます。サーバー側は Java Servlet です。

function postCall(url, params) {
    var newForm = jQuery('<form>', {
            'method':'POST',
            'action': url
        });

    for(key in params) {
        if (params.hasOwnProperty(key)) {
            newForm.append(jQuery('<input>', {
                'id': key,
                'value': params[key],
                'type': 'hidden'
            }));
        }
    }

    newForm.submit();
}

このメソッドが呼び出されたとき、サーバー側はリクエストを受け取りませんでした。このコードには何か問題があるに違いないと思います。

4

1 に答える 1

7

を含む入力のみがnameサーバーに送信されます。これを試して:

newForm.append(jQuery('<input>', {
    'name': key, //<-- change to name instead of id
    'value': params[key],
    'type': 'hidden'
}));

また、IE の場合は、送信する前にドキュメントにフォームを追加する必要もあります。

newForm.appendTo("body").submit();
于 2013-07-09T15:05:49.553 に答える