現在Ajaxの開発をPrototype.js ver1.6 を使って開発しています。
フォームの入力項目をPOSTを使ってCGI(perl)に投げているのですが、CGIで受けた文字コードがUTF-8になります。
HTML/JSはすべてShift_JISです。
できればうけとるCGIにShift_JISで投げたいのですが。。
やはり、無理なのでしょうか・・・?
ちなみにソースは以下のようです
new Ajax.Request(url, {method: "post",
parameters : Form.serialize(formID),
onSuccess:function(httpObj){
$('box').innerHTML = httpObj.responseText;
},
onFailure:function(httpObj){
$("box").innerHTML = "error";
}
});
Prototype.JSの設定も変更しています。
Ajax.Base = Class.create({
initialize: function(options) {
this.options = {
method: 'post',
asynchronous: true,
contentType: 'application/x-www-form-urlencoded;charset=Shift_JIS',
encoding: 'Shift_JIS',
parameters: '',
evalJSON: true,
evalJS: true
};
Object.extend(this.options, options || { });
this.options.method = this.options.method.toLowerCase();
if (Object.isString(this.options.parameters))
this.options.parameters = this.options.parameters.toQueryParams();
}
});
どうぞよろしくお願いいたします。
コメント(0件)