Javascript 如何为文本框应用ng if
在我的plunker中,我有两个文本框。我在文本框中应用了Javascript 如何为文本框应用ng if,javascript,jquery,html,css,angularjs,Javascript,Jquery,Html,Css,Angularjs,在我的plunker中,我有两个文本框。我在文本框中应用了ng if。如果ng模型包含-1值,则它需要离开该文本框并能够输入另一个值,如果它不是-1,则没有问题。我们可以继续 但是在这里,如果我应用ng if,那么它会隐藏文本框,但我不想隐藏,只想隐藏值 HTML:- <input type="text" ng-if ="model !=-1" ng-model="model"/> $scope.model = '-1'; $scope.model1 = '1'; 实际
ng if
。如果ng模型包含-1
值,则它需要离开该文本框并能够输入另一个值,如果它不是-1
,则没有问题。我们可以继续
但是在这里,如果我应用ng if
,那么它会隐藏文本框,但我不想隐藏,只想隐藏值
HTML:-
<input type="text" ng-if ="model !=-1" ng-model="model"/>
$scope.model = '-1';
$scope.model1 = '1';
实际上,
ng if
指令在为真时隐藏其父指令。我认为,当有人输入-1时,您实际上需要更改文本框的值。因此,请使用$watch
var module = angular.module("myModule", []);
module.controller('myController', ['$scope', function($scope) {
$scope.model = '-1';
$scope.model1 = '1';
$scope.txtValue = 1;
$scope.$watch("txtValue", function (newVal) {
if (newVal == '-1')
{
$scope.model1 = -1;
$scope.txtValue = "";
}
else
{
$scope.model1 = newVal;
}
});
}]);
HTML
请记住删除
ng如果
指令您可以添加另一个输入,当ng模型包含-1和空值时,该输入将可见,以便用户可以输入新值
<div ng-app="myModule">
<div ng-controller="myController">
<input type="text" ng-if ="model !=-1" ng-model="model"/>
<input type="text" ng-if ="model1 !=-1" ng-model="model1"/>
<input type="text" ng-show="model ==-1" ng-model="model = null" >
</div>
</div>
对不起,我已编辑了该问题它不应再次为零,它应仅包含-1
,并且需要隐藏我编辑答案的值。你现在能查一下吗。将txtValue
放入textBox的ng模型
当我混淆我为脚本添加了html部分时,请给我上面的js代码的html示例代码。检查它似乎没问题,但是ng模型应该只包含-1只存储原始值,如果输入不被触动(value=null),用原始值替换模型。。。
<div ng-app="myModule">
<div ng-controller="myController">
<input type="text" ng-if ="model !=-1" ng-model="model"/>
<input type="text" ng-if ="model1 !=-1" ng-model="model1"/>
<input type="text" ng-show="model ==-1" ng-model="model = null" >
</div>
</div>