Outlook
事件绑定到其中以清除其中的数据时, x
会在Outlook add-in
面板的输入字段末尾添加click
。
我需要为click事件添加逻辑,但我无法在DOM中找到x
。
当用户点击x
时,数据将从input-field
中移除,但数据将保留在$scope.email
,因为角度$watch
没有工作
我正在寻找指点:
Outlook
如何在输入字段末尾添加x
?x
?答案 0 :(得分:1)
在模板中添加:
<div class="input-new">
<input ng-model="textValue" ng-focus="isFocused=true" ng-blur="blur()" />
<button ng-show="isFocused && textValue.length > 0" ng-click="cleanText()">X</button>
</div>
控制器中的添加:
$scope.isFocused = false;
$scope.textValue = "";
$scope.cleanText = function() {
$scope.textValue = "";
}
$scope.blur = function() {
$timeout( function(){
$scope.isFocused = false;
}, 200 );
}
当然你必须在输入和div框中添加样式。
答案 1 :(得分:1)
Office
uifTextfield
指令,以便当用户单击输入字段右侧的"X"
a清除值时,它将反映在绑定到它的模型中
app.directive('uifTextfield', function() {
return {
restrict: 'E',
require: ['uifTextfield', '?ngModel'],
link: function(scope, elem, attr, ctrl) {
$(elem).find("input").bind("mouseup", function(event) {
var $inputElement = $(this);
if ($inputElement.val()) {
setTimeout(function() {
if (!$inputElement.val()) {
angular.element($inputElement).controller('ngModel').$setViewValue('');
}
}, 1);
}
});
}
};
});