私は再利用できるように、ajax呼び出しの周りに関数を作成したいと考えています。しかし、条件に基づいてdata: ({ … })
の部分を(switch
を介して)入力することに問題があります。私は、未定義の変数を送信AJAX呼び出しをしようと、私は動的にdata: ({ … })
を設定したいときjavascript + jquery ajax:条件付き "data"要素
var d = {};
function lookup (what,etat,compt,vile,zip) {
switch(what) {
case "cou_mun":
d: ({
lookup: "county",
state: etat
})
break;
case "city":
d: ({
lookup: "city",
state: etat,
county: compt
})
break;
case "zipcode":
d: ({
lookup: "zipcode",
state: etat,
county: compt,
city: vile
})
break;
default:break;
}
$.ajax({
url: "socioGeo_envnLookup.php",
type: "POST",
data: d,
//lookup: "county", //"county" or "city" or "zipcode"
//state: etat
//county: cou_mun,
//city: city,
success: function(what,data) {
$('select[name="'+what+'"]').html(data);
}
}); //$.ajax
} //lookup()
そして私はlookup("city",state,county);
IEのようにそれを呼ぶだろうが文句を言います。
であるべき。また、関数内で 'd'をローカルに定義するようにしてください。 –
@FelixKlingなぜ '成功'に '何が' 'データ'にあるべき値として知っていますか?成功の中で、 'what' =' data'と 'data = function toSource 'にあるべきhtml(' what =' + what '+' data '+ data.toSource); ' (){[ネイティブコード]} ' – jacob