jQuery: realizar alguna acción antes de enviar el formulario
Tengo una página con un solo formulario. El formulario contiene un cuadro de texto y un botón de envío.
Cuando se envía el formulario, ya sea haciendo clic en el botón o presionando Intro en el cuadro de texto, quiero hacer una búsqueda (en este caso, geocodificar un código postal usando Bing Maps) y luego enviar el formulario al servidor, como usual
Mi enfoque actual es agregar un controlador para el evento de envío al formulario único y luego llamar a submit () cuando haya terminado, pero no puedo hacer que esto funcione y no he podido para depurar el problema:
$(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();
}
});
});
});