#javascript #html #angularjs
#javascript #HTML #angularjs
Вопрос:
У меня есть форма с кнопкой сохранения. При нажатии кнопки сохранения вызывается функция сохранения, и все данные формы сохраняются и перемещаются на другую страницу. Затем, когда я перехожу на предыдущую страницу, кнопка tab перестает работать. Единственный способ заставить кнопку tab работать — обновить страницу.
Я пытался указать tabindex, но все еще сталкивался с той же проблемой.
Вот мой код:
<div id="customeruser" ng-show="custom_user">
<form name="userForm">
<ul class="collapsible" data-collapsible="accordion">
<li>
<div class="collapsible-header active left">
<i class="material-icons tclose">add</i>
<i class="material-icons topen">remove</i>
Personal Information
</div>
<div class="collapsible-body">
<div class="row">
<div>
<input id="first_name" type="text" class="validate" ng-model="user.first_name">
<label for="first_name">First Name</label>
</div>
<div>
<input class="passhints" name="password" ng-model="user.password" id="password"
type="password" autocomplete="new-password">
<label for="password" data-error="wrong" data-success="right">Password*</label>
</div>
</div>
</div>
</li>
<li>
<div class="collapsible-header left">
<i class="material-icons tclose">add</i>
<i class="material-icons topen">remove</i>
Other information
</div>
<div>
<input id="last_name" type="text" class="validate" ng-model="user.last_name">
<label for="first_name">Last Name</label>
</div>
</li>
</ul>
<div class="left" ng-show="custom_user">
<button type="submit" id="savechanges" ng-click="saveUser()">Create</button>
</div>
</form>
Controller.js
$scope.saveUser = function () {
Restangular.all("users/createuser/").post($scope.user).then(
function (user_status) {
$scope.user.id = user_status
if (user_status > 0) {
swal({
title: "Success!",
text: "User was successfully created!",
type: "success",
confirmButtonText: "OK"
},
function (isConfirm) {
if (isConfirm) {
$state.go('manage');
}
});
}
},
)
}
Комментарии:
1. Не могли бы вы опубликовать код для saveUser() и объяснить, что вы подразумеваете под «переходами на другую страницу» и «переходом на предыдущую страницу»? Я предполагаю, что ваша функция saveUser () отключает форму, и вы никогда не покидаете страницу, а динамически меняете содержимое на существующей странице.
2. @StealthSpoder Я добавил saveUser().
3. Что имеет фокус вкладки, когда вы возвращаетесь к / управление? Это должно быть где-то, может быть, в строке местоположения или одной из кнопок браузера? Можете ли вы добавить функцию $ timeout для focus() элемента с индексом tab 0 при инициализации контроллера?
4. Элемент @kendavidson фокусируется, но кнопка tab по-прежнему не работает. Я пробовал с указанием индекса вкладки и без него.