//初期設定 //リンク先URL var urlTxt = 'www.bestselect.co.jp'; //金額幅 var range = 300; var min; var max; var p; function loanSim(f){ //カンマ削除 f.propertyPrice.value = delFigure(f.propertyPrice.value); f.bonus.value = delFigure(f.bonus.value); f.nenshu.value = delFigure(f.nenshu.value); f.shikin.value = delFigure(f.shikin.value); p = f.propertyPrice.value; var shiharai = ""; var bonus_shiharai = ""; var rate = ""; //計算 if (validator("propertyPrice")&&validator("nenshu")&&validator("bonus")&&validator("shikin")&&validator("kinri")) { shiharai = Math.ceil(shiharaiCal(f)); f.shiharai.value = shiharai; if (f.bonus.value > 0) { bonus_shiharai = Number (shiharai) + Number (f.bonus.value * 10000); } rate = rateCal(f); } //カンマ追加 f.propertyPrice.value = addFigure(f.propertyPrice.value); f.bonus.value = addFigure(f.bonus.value); f.nenshu.value = addFigure(f.nenshu.value); f.shikin.value = addFigure(f.shikin.value); //各返済額の出力 f.shiharai.value = shiharai; f.shiharai.value = addFigure(f.shiharai.value); f.bonus_shiharai.value = bonus_shiharai; f.bonus_shiharai.value = addFigure(f.bonus_shiharai.value); f.rate.value = rate; } //カンマ追加 function addFigure(str) { var num = new String(str).replace(/,/g, ""); while(num != (num = num.replace(/^(-?\d+)(\d{3})/, "$1,$2"))); return num; } //カンマ削除 function delFigure(str) { var num = str.split(",").join("") return(num); } //入力チェック function validator(obj) { var f = document.form1; switch (obj) { case "propertyPrice": var num = f.propertyPrice.value; if (num != "") { if ( num == parseInt(num)){ return true; } else { alert("購入希望物件価格は半角数字で入力してください。"); f.propertyPrice.focus(); return false; } break; } else { alert('購入希望物件価格が入力されていません。'); f.propertyPrice.focus(); return false; break; } case "nenshu": var num = f.nenshu.value; if (num != "") { if ( num == parseInt(num)){ return true; } else { alert ("年収は半角数字で入力してください。"); f.nenshu.focus(); return false; } break; } else { alert("年収が入力されていません。"); f.nenshu.focus(); return false; break; } case "bonus": var num = f.bonus.value; if (num != "") { if ( num == parseInt(num)){ return true; } else { alert("ボーナス返済額は半角数字で入力してください。"); f.bonus.focus(); return false; } break; } else { f.bonus.value = "0"; return true; break; } case "shikin": var num = f.shikin.value; if (num != "") { if ( num == parseInt(num)){ return true; } else { alert("自己資金は半角数字で入力してください。"); f.shikin.focus(); return false; } break; } else { f.shikin.value = "0"; return true; break; } case "kinri": var num = f.kinri.value; if (num != "") { if (num == parseFloat(num)){ if(Number(num) < 0.001 || Number(num) > 99.999) { alert ("金利は0.001~99.999%の間で入力して下さい。"); f.kinri.focus(); return false; break; } else { return true; } } else { alert ("金利は半角数字で入力してください。"); f.kinri.focus(); return false; } break; } else { alert("金利が入力されていません。"); f.kinri.focus(); return false; break; } } } //計算 function shiharaiCal(f){ var rate = eval(f.kinri.value) / 100; var nper = eval(f.kikan.value) * 12; var deno = Math.pow((1 + (rate / 12)),nper); var nume = ((eval(f.propertyPrice.value)*10000) - (eval(f.shikin.value)*10000)) * deno; var pmt = nume / (1 - deno) * (rate/12); var nenso = (-1) * pmt * 12; var price = (nenso - (eval(f.bonus.value)*10000) * 2) / 12; //物件価格の前後幅を計算 min = Number(p) - range/2; max = Number(p) + range/2; // $('#listBtn').show (); $('#result').show (); // location.href = '#result'; resultMove("#result"); return(price); } function rateCal(f){ var rate = (eval(f.shiharai.value) * 12 + (eval(f.bonus.value)*10000) *2)/eval(f.nenshu.value)/10000*100; rate = Math.round(rate*10); rate = rate/10 return(rate); } // 結果の位置にスムースで移動 function resultMove(t) { const speed = 400; const target = $(t); const targetPos = target.offset().top; $('html, body').animate({ scrollTop: targetPos }, speed, 'swing'); return false; }; // 物件一覧ボタンにリンクを追加 $(function() { $('#button').click (function() { // $('#listBtn span').wrap(''); $('#listBtn').css("display","block"); $('#listBtn a').attr("href","http://" + urlTxt + "/contents/code/search_result?mb_cost_min=" + min + "&mb_cost_max=" + max); }); });