【发布时间】:2018-02-05 14:24:51
【问题描述】:
我有一个包含两个字段的表单,我只想在提交表单时更改选项卡,问题是由于页面没有重新加载,表单保持与之前输入的相同。
这是我的表格
<form name="userForm" ng-submit='manageBed.addBed(bedData);' ng-hide="manageBed.loader">
manageBed 是控制器 尝试过
$scope.userForm.$setPristine(); 并在控制器中清除 bedData this.bedData={}; 会导致所需的字段错误。
this.addBed = function(bedData) {
Admin.addBed(this.bedData).then(function(data) {
if (data.data.success) {
app.loader = true;
$timeout(function() {
app.loader = false;
$scope.myTabIndex = 0;
Admin.viewBed().then(function(data) {
if (data.data.success) {
$scope.beds = data.data.beds;
} else {
$scope.nobed = true;
}
});
app.bedData = {};
$location.path('/admin/managebeds');
}, 3000);
} else {
app.loader = false;
}
});
};
【问题讨论】:
-
您能否添加您的控制器代码以进行提交和重置?
-
this.addBed = function (bedData) { Admin.addBed(this.bedData).then(function (data) { if(data.data.success){ app.loader = true; $timeout(function () { app.loader = false; $scope.myTabIndex =0; Admin.viewBed().then(function (data) { if(data.data.success){ $scope.beds=data.data.beds; } else{ $scope.nobed=true; } }); app.bedData ={}; $location.path('/admin/managebeds'); },3000); } else{ app.loader = false; } }); }; -
您为什么使用应用程序“app.bedData”以及它的定义位置?