Я новичок в этом. Я использую ASP.NET MVC С# LINQ to SQL.
У меня есть страница редактирования, в которой загружаются авторы и все их книги. Книги загружаются через вызов Ajax.
<script type="text/javascript">
$(document).ready(function() {
LoadBooks();
});
function LoadBooks() {
$(".Books").hide();
$(".Books").load("/Books/Edit/<%= Model.AuthorID %>");
$(".Books").show('slow');
}
</script>
Эта часть работает нормально. На странице загружается информация об Авторе, затем загрузка Книги (частичный вид в DIV id = "Книги", только с категорией книг и названием книги):
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<Solution.Controllers.BooksController+BooksViewModel>" %>
<% using (Html.BeginForm(null,null, FormMethod.Post,new { id = "bookform" }))
{%>
<fieldset>
<legend>Books</legend>
<%int i = 0;
foreach (var book in Model.Books)
{%>
<%= book.BookID%>
<%= Html.Hidden("book[" + i + "].BookID", book.BookID) %>
<%= Html.DropDownList("book[" + i + "].CatID", new SelectList(Model.Categories, "CatID", "CatTitle", book.CatID))%>
<%= Html.ValidationMessage("CatID", "*")%>
<%= Html.TextBox("book[" + i + "].BookTitle", book.BookTitle)%>
<%= Html.ValidationMessage("BookTitle", "*")%>
<br />
<%i++;
} %>
</fieldset>
<% } %>
Теперь, на главной странице просмотра, я хочу иметь ссылку. Когда щелкнули ссылку, я хочу сделать несколько вещей через JavaScript/jQuery/Ajax/что угодно. Первое, что я хочу сделать, - отправить форму Books (id = booksform) из частичного представления, а затем перейти к следующему jQuery. Таким образом, я нажимаю ссылку, которая вызывает функцию JavaScript. Эта функция должна вызывать/выполнять/выполнять подачу формы Книги.
Мне кажется, что я все пробовал, но я не могу получить свою форму для отправки и обработки без полной отправки/обновления страницы. (Обратите внимание, что когда полный запрос выполняется, действия, которые я ожидаю в контроллере, будут успешно выполнены). Я хочу, чтобы процесс/действие контроллера не возвращали ничего, кроме какого-либо индикатора успеха/отказа. (Затем я могу вызвать "LoadBooks();" снова, чтобы обновить DIV на странице.
Любые идеи?