Я делал это раньше в jQuery (не уверен, что это «лучший» способ, но он работает):
function jsonhandler(data) {
// do stuff with the JSON data here
}
var doajax = function () {
arr = Object();
$("#form_id").children("input,select").each(function() { arr[this.name] = this.value;});
$.getJSON("<page to call with AJAX>", arr, function (data) { jsonhandler(data);});
}
$(document).ready(function () {
$("#submit_button_id").replaceWith("<input id=\"sub\" name=\"sub\" type=\"button\" value=\"Submit\">");
$("#sub").click(doajax);
}
Вы можете заменить $ .getJSON на в зависимости от того, какая функция jQuery AJAX делает то, что вы хотите . Если вы просто хотите отобразить вывод страницы, которую вы вызываете, вероятно, лучшим выбором будет $ .get. Если у вас есть другие типы ввода, помимо ввода, и выберите их в форме, вам также необходимо добавить их в функцию потомков.