Вы должны выполнить ajax-вызов с помощью jquery для метода с поддержкой json на вашем контроллере, который отправляет обратно данные.
Используя эти данные, вы можете обновить содержимое элемента div с помощью эффекта, такого как $("#somediv").html(ajax_result)
Вот реальный пример:
var linkHtml = $("#searchNumber").html();
$("#message").empty();
var aurl = "/Prospect/SearchNumberAuth?number=" + $("#MSISDN").val() ;
$.ajax({
dataType: 'json',
type: "GET",
url: aurl,
async: false,
contentType: "application/json; charset=utf-8",
beforeSend: function() {
$("#holdNumber").fadeOut("slow");
$("#searchNumber").empty().html("<image src='../../Content/images/jquery-ui/load-indicator.gif'/>");
},
success: function(response) {
$("#message").fadeIn(1500).html(function() {
if (response[0] == "Exist") {
$("#holdNumber").fadeIn("slow");
$("#MSISDN").attr("readonly", "readonly");
$("#searchNumber").fadeOut("slow");
return existMsg;
} else if (response[0] == "Sold") {
$("#searchNumber").empty().html(linkHtml).fadeIn("slow");
return soldMsg;
} else if (response[0] == "Hold") {
$("#searchNumber").empty().html(linkHtml).fadeIn("slow");
return holdMsg;
} else
$("#searchNumber").empty().html(linkHtml).fadeIn("slow");
return notExistsMsg;
});
},
error: function(jqXHR, textStatus, errorThrown) {
$("#searchNumber").empty().html(linkHtml).fadeIn("slow");
},
complete: function() {
}
});
А вот код на стороне сервера в классе контроллера, который можно легко перенести на Rails:
public JsonResult SearchNumberAuth(long number)
{
return this._searchNumber(number);
}
, который в _searchNumebr
метод я верну JsonResult
.
Более подробную информацию можно найти на веб-сайте , хотя он написан на персидском языке, но вы можете увидеть код js с помощью FireBug в ProspectView.js и результат на второй вкладке.