Я использую вкладки пользовательского интерфейса jQuery в веб-приложении ASP.NET MVC 2. Одна часть приложения требует, чтобы я делал проверку ошибок, когда я переключаюсь с вкладки. Я делаю это через этот скрипт в файле aspx, который содержит вкладки.Лучший способ создания вкладок jQuery
<script type="text/javascript">
$(function() {
$("#tabs").tabs({
cache: true,
select: function (event, ui) {
var $tabs = $('#tabs').tabs();
switch ($tabs.tabs('option', 'selected')) {
case 0:
$.post("User/Personal", $("#PersonalForm").serialize(), function (data, success) {
if (success) {
$("#PersonalForm").html(data);
}
});
break;
case 1:
$.post("User/Account", $("#AccountForm").serialize(), function (data, success) {
if (success) {
$("#AccountForm").html(data);
}
});
break;
default:
break;
}
return true;
},
ajaxOptions: {
error: function (xhr, status, index, anchor) {
$(anchor.hash).html("Couldn't load this tab. We will fix this as soon as possible.");
}
}
});
});
</script>
Есть дополнительные инструкции переключателя (сняты для краткости). В принципе, этот код позволяет проверять MVC на вкладках посредством аннотаций данных - работает очень хорошо. В любом случае, мне было интересно, возможно ли, чтобы этот код «сгенерировался» на основе любых вкладок, которые у меня есть в моем документе. (Если это не так, я в основном должен кодировать инструкцию случая в операторе switch вручную, что кажется вроде отходами.)
Кроме того, в качестве примечания стороны я использую элементы управления ASP для каждой вкладки сохраняйте различные данные (которые также находятся там, где находятся отдельные формы). Это может повлиять на решение.
Все содержимое табуляции одного и того же типа, например содержащий форму ('PersonalForm',' AccountForm') и т. д., и что «действие» формы указывает на то, где '' .post() 'следует отправить для проверки? –
@Simen - Каждая вкладка содержит одну из форм, а коллекция вкладок представляет весь пользователь. (Вы выбираете пользователя на предыдущей странице и получаете серию вкладок, позволяющих вводить пользователя.) Когда я отправляю отдельные формы, это соответствует методу внутри класса контроллера (есть один метод для каждой формы на вкладке). Проясняет ли это? – JasCav
В некотором роде - см. Мой ответ и решает ли он вашу проблему :) –