単一のフォームを含むページがあります。フォームには、テキストボックスと送信ボタンが含まれています。
ボタンをクリックするか、テキストボックスでEnterキーを押してフォームを送信するときに、ルックアップ(この場合は、Bing Mapsを使用して郵便番号をジオコーディングする)を実行してから、通常どおりフォームをサーバーに送信します。 。
私の現在のアプローチは、送信イベントのハンドラーを唯一のフォームに追加し、終了したらsubmit()を呼び出すことですが、これを機能させることができず、実行できませんでした問題をデバッグします。
$(document).ready(function () {
$("form").submit(function (event) {
var postcode = $.trim($("#Postcode").val());
if (postcode.length === 0) {
return false;
}
var baseUrl = "http://dev.virtualearth.net/REST/v1/Locations/UK/";
var apiKey = "myKey";
var url = baseUrl + postcode + "?key=" + apiKey + "&jsonp=?";
$.getJSON(url, function (result) {
if (result.resourceSets[0].estimatedTotal > 0) {
var location = result.resourceSets[0].resources[0].point.coordinates;
$("#latitude").val(location[0]);
$("#longitude").val(location[1]);
$("form").submit();
}
});
});
});