私のコントローラクラスでは、以下のようにいくつかの属性をリクエストに設定しています。JavaScriptでダイナミックリクエスト変数にアクセスする
for(ConsumerVO dep:quoteVO.getConsumerFamily().getDependents())
{
request.setAttribute("dependent_"+depCount+"_birthdateMM", dep.getBirthdateMM());
request.setAttribute("dependent_"+depCount+"_birthdateDD", dep.getBirthdateDD());
request.setAttribute("dependent_"+depCount+"_birthdateYYYY", dep.getBirthdateYYYY());
depCount++;
}
jspでは、変数名を動的に設定してアクセスしようとしています。しかし、それは働いていない。 $ {depMM}、$ {depDD}などのデータはありません。$ {$ {depMM}}のようなものを探しています。ループ内で要求変数にアクセスするにはどうすればよいですか?
jQuery(function(){
var dependent_data = [];
for(j=1;j<16;j++){
var depMM = "dependent_"+j+"_birthdateMM";
var depDD = "dependent_"+j+"_birthdateDD";
var depYY = "dependent_"+j+"_birthdateYYYY";
if (typeof '${depMM}' !== 'undefined' && '${depMM}' !=="") {
dependent_data.push('${depMM}','${depDD}','${depYYYY}');
}
}
PS:これを実行すると、データが印刷されました。
var dependent1MM_data = '${dependent_1_birthdateMM}';
alert(dependent1MM_data);
あなたはどのようにJSPで変数を設定しているかを示すことができますか? – karthick
この変数はjspでは直接使用されません。このデータに基づいていくつかのdivを表示/作成する別のjquery関数に渡されます。 – jijo