こんにちは、post メソッドを使用してサーバーにデータを送信したいのですが、ajax は使用しません。次のようなデータを送信しています。
function handleLogin()
{
var form = $("#loginForm");
var u = $("#username", form).val();
var p = $("#password", form).val();
var d = $("#dob", form).val();
if(u != '' && p!= '')
{
var finalStr = u+encodeURIComponent("|^")+p+encodeURIComponent("|^")+encodeURIComponent("|^")+"X"+encodeURIComponent("|^")+d+encodeURIComponent("|^")+"1.0"+encodeURIComponent("|^|$");
var encodedURL = encodeURI(intranetUrl+"customer/Ri_logon5.asp?requestString=");
var parameters = decodeURIComponent(finalStr);
post_to_url(encodedURL,parameters);
}
else
{
alert("You must enter a username and password", function() {});
$("#submitButton").removeAttr("disabled");
}
}
私のpost_to_url関数は次のとおりです。
function post_to_url(url, params) {
var form = document.createElement('form');
form.action = url;
form.method = 'POST';
for (var i in params)
{
if (params.hasOwnProperty(i))
{
var input = document.createElement('input');
input.type = 'hidden';
input.name = i;
input.value = params[i];
form.appendChild(input);
}
}
form.submit();
}
しかし、サーバーからは、間違ったパラメーターを渡したときに来るオブジェクトではなく、応答がありました。しかし、ajax ten で同じパラメーターを渡すと、完全に機能します。なぜそうなのですか?
私の URL 形式は次のとおりです。http://myDomain/Ri_logon5.asp?requestString=
パラメータの形式は次のようになります:manish|^info1234|^|^X|^11111985|^1.0|^|$
URL を入力して残りのクライアントにパラメーターを渡すと、適切な応答が得られます。