输入文本未被清除

时间:2014-05-06 12:01:41

标签: angularjs

我在保存一些数据后尝试清除输入文本,但它不起作用。这是我到目前为止所尝试的内容(评论中也是如此):

提前感谢您的帮助!

HTML:

<div id="add-tag">
    <h3>Add new tag</h3>
    <form name="addTagForm">
        <input class="form-control" type="text" ng-model="newTag" ng-change="onChangeTag()">
        <button class="btn btn-primary" ng-click="addTag(newTag)">Add Tag</button>  
    </form>             
</div>  

JS:

//$scope.master = {};

// Reset scope
$scope.reset = function() {
    $scope.newTag = "";
    //$scope.newTag = angular.copy($scope.master);
};


$scope.addTag = function(tag) {

    // Save some data (this works fine) 
    // ....

    // Reset input field
    $scope.reset();     
};

更新

我的ng-controller设置为父模板(我使用ui.router)。只是将它添加到子模板中它确实有效。

<div id="add-tag" ng-controller="FormController">
    <h3>Add new tag</h3>
    <form name="addTagForm">
        <input class="form-control" type="text" ng-model="newTag" ng-change="onChangeTag()">
        <button class="btn btn-primary" ng-click="addTag(newTag)">Add Tag</button>  
    </form>             
</div>  

1 个答案:

答案 0 :(得分:1)

我是angularjs的新手,但在尝试了一些东西后,我得到了一些解决方案。您可以查看this bin。我刚刚添加了一个控制器: -

function test_c($scope){

$scope.reset = function() {
$scope.newTag = "";
//$scope.newTag = angular.copy($scope.master);
};

$scope.addTag = function(tag) {

// Save some data (this works fine) 
// ....

// Reset input field
$scope.reset();     
};}

看看html部分: -

<body ng-app>
  <div id="add-tag" ng-controller="test_c">
    <h3>Add new tag</h3>
    <form name="addTagForm">
    <input class="form-control" type="text" ng-model="newTag" ng-change="onChangeTag()">
    <button class="btn btn-primary" ng-click="addTag(newTag)">Add Tag</button>  
    </form>             
</div>