重置HTML表单字段(避免撤消功能)

时间:2014-09-09 05:27:29

标签: javascript html angularjs twitter-bootstrap

我在SPA中遇到了一个问题(基于AngularJS的单页应用程序)。

情景:

  1. 用户使用包含用户名和密码的导航栏登录系统,在场景后面我正在重置包含登录名的表单并通过..

  2. 用户按下指向他/她个人资料的链接。

  3. 按导航栏注销按钮我将用户发送到主页。

  4. 如果我站在用户名输入控件中并按下Control + Z以撤消我获取用户名,另一个Control + Z也会检索密码。

  5. 如何重置这两个字段的撤消(历史记录)功能。

    顺便说一句:如果我刷新页面,它就会消失。

    谢谢你,

1 个答案:

答案 0 :(得分:3)

这在IE和Firefox中看起来是一个问题(或功能?),但在Chrome中似乎不会发生。

从输入框中清除撤消历史记录的快捷方法是从DOM中删除它们并将其添加回来。在Angular中,我们可以使用ngIf ...

<input ng-model="user.username" type="text"     ng-if="enabled" placeholder="Username" />
<input ng-model="user.password" type="password" ng-if="enabled" placeholder="Password" />

清除文本框时,切换enabled属性...

$scope.clear = function () {
    $scope.user = {};

    $scope.enabled = false;
    $timeout(function () { $scope.enabled = true });
}; 

Live Demo