1

我有一个使用隔离范围的简单指令,它从模板内将数据传递给范围方法:

app.directive("phone", function () {
    return {
      scope: {
        dial: "&"
      },
      template: '<input type="text" ng-model="value">' +
        '<br>' +
        '<div class="button" ng-click="dial({message:value})">' +
        'Call home!</div>',
      controller: function($scope) {
        console.log($scope);
      }
    };
  });

工作正常。但是我想在警报完成后清除输入字段。我很难弄清楚如何访问ng-model="value"从指令中生成的输入。有什么帮助吗?

这是给你的

4

1 回答 1

0

将模板更改为此

template: '<input type="text" ng-model="value">' +
        '<br>' +
        '<div class="button" ng-click="dial({message:value}); value = \'\' ">' +
        'Call home!</div>',

请注意,ng-click更改为ng-click="dial({message:value}); value = \'\' "

这将在调用函数后将 设置value为空字符串。dial()

这是演示

或者你可以试试这个,但似乎第一个更好。

于 2015-10-02T04:56:11.123 回答