AJAX 呼び出しの後、次のような JSON データを取得します。
{
"detailPrice": {
"server": {
"amount": "8",
"usedPrice": "10",
"discountPrice": "-1",
"totalPrice": "9"
},
"network": {
"amount": "8",
"usedPrice": "10",
"discountPrice": "-1",
"totalPrice": "9"
},
"storage": {
"amount": "8",
"usedPrice": "10",
"discountPrice": "-1",
"totalPrice": "9"
},
"loadBalancer": {
"amount": "8",
"usedPrice": "10",
"discountPrice": "-1",
"totalPrice": "9"
},
"others": {
"amount": "8",
"usedPrice": "10",
"discountPrice": "-1",
"totalPrice": "9"
},
"support": {
"amount": "8",
"usedPrice": "10",
"discountPrice": "-1",
"totalPrice": "9"
},
"totalPrice": {
"totalUsedPrice": "8",
"totalDiscountPrice": "-2",
"missedPrice": "10",
"tax": "9",
"otherDiscount": "-1"
}
}
}
これらのデータをビューに追加する必要があるため、次のようなコードを作成しました。
var serverpriceHTML = "총 " + result.detailPrice.server.amount + "대<br/>";
serverpriceHTML += "이용요금 " + result.detailPrice.server.usedPrice + "원<br/>";
serverpriceHTML += "할인요금 " + result.detailPrice.server.discountPrice + "원<br/>";
var serverTotalPriceHTML = result.detailPrice.server.totalPrice + "원";
$("#server_price").html(serverpriceHTML);
$("#server_totalprice").html(serverTotalPriceHTML);
var networkpriceHTML = "총 " + result.detailPrice.network.amount + "대<br/>";
networkpriceHTML += "이용요금 " + result.detailPrice.network.usedPrice + "원<br/>";
networkpriceHTML += "할인요금 " + result.detailPrice.network.discountPrice + "원<br/>";
var networkTotalPriceHTML = result.detailPrice.network.totalPrice + "원";
$("#network_price").html(networkpriceHTML);
$("#network_totalprice").html(networkTotalPriceHTML);
ご覧のとおり、重複したコードがたくさんあるので、それに関するプライベート関数を作成しようとしています。
問題は:
result.detailPrice.server.amount
データを取得するには、、、などに変更server
する必要がありますが、これを変更する方法がわかりません。network
storage
loadbalancer
私が好きなら:
function makeHTML(price, totalPrice, name) {
var test = "result.detailPrice" + name + ".amount";
var serverpriceHTML = "총 " + test + "대<br/>";
serverpriceHTML += "이용요금 " + result.detailPrice.server.usedPrice + "원<br/>";
serverpriceHTML += "할인요금 " + result.detailPrice.server.discountPrice + "원<br/>";
var serverTotalPriceHTML = result.detailPrice.server.totalPrice + "원";
$(price).html(serverpriceHTML);
$(totalPrice).html(serverTotalPriceHTML);
}
これは文字列テストを追加するだけです。これについて何か良い考えはありますか?