jQuery: executando alguma ação antes do formulário ser enviado
Tenho uma página com um único formulário. O formulário contém uma caixa de texto e um botão de envi
Quando o formulário é enviado, clicando no botão ou pressionando enter na caixa de texto, desejo fazer uma pesquisa (nesse caso, geocodificar um código postal usando o Bing Maps) e enviar o formulário ao servidor, como usual.
Minha abordagem atual é adicionar um manipulador para o evento de envio ao formulário único e, em seguida, chamar submit () quando terminar, mas não consigo fazer isso funcionar e não consegui para depurar o 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();
}
});
});
});