Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 退格使输入不使用ng模型填充_Javascript_Angularjs_Html - Fatal编程技术网

Javascript 退格使输入不使用ng模型填充

Javascript 退格使输入不使用ng模型填充,javascript,angularjs,html,Javascript,Angularjs,Html,我有这样一个输入标签: <input ng-model='number'> 按钮和所有按钮都正确地填充模型和输入,但是如果我使用键盘上的退格键删除当前输入中的内容,单击按钮将不再填充和显示输入字段 我曾尝试在按下backspace键时创建一个事件侦听器,并使用自定义函数处理backspace,但没有成功。关于为什么会发生这种情况,有什么想法吗?在添加数字之前添加一个预检查,看看它是空的还是未定义的。当您删除输入字段时,var编号为未定义或“ 在代码中,将$rootScope.num

我有这样一个输入标签:

<input ng-model='number'>
按钮和所有按钮都正确地填充模型和输入,但是如果我使用键盘上的退格键删除当前输入中的内容,单击按钮将不再填充和显示输入字段


我曾尝试在按下backspace键时创建一个事件侦听器,并使用自定义函数处理backspace,但没有成功。关于为什么会发生这种情况,有什么想法吗?

在添加数字之前添加一个预检查,看看它是空的还是未定义的。当您删除输入字段时,var
编号
未定义

在代码中,将
$rootScope.number
定义为
string

$rootScope.number = "";
修复了上面的问题。 显然,这是由于角度范围问题。
我没有使用$rootScope.number,而是创建了一个对象,并将该对象的属性设置为number。
例如:
$rootScope.obj.number


使用对象的属性修复了这个问题,只需要对角度范围进行一点读取。

这不起作用,我意识到,在按下1、2、3的按钮后,$rootScope.number=123。在我删除输入上的数字后,我希望$rootScope.number等于undefined或“”,但它仍然是123。在按下1 2 3按钮或“6”后,您想成为
123吗?123,基本上我有一个拨号板,每个按钮都会向$scope.number添加一个数字,该数字是使用pop函数输入的模型。我根据您的评论更改了答案,检查它是否对您有效。我尝试了我告诉您的所有内容,并且有效。。。。你在另一个地方做错了什么
$rootScope.pop = function(number) {
    $rootScope.number = $scope.number + number;
}
$rootScope.pop = function(number) {
    // !== Compares two expressions to determine if they are not equal in value or of the same data type
    if($rootScope.number !== undefined && $rootScope.number !== null){
        //Added "" just to make sure the number is treated like a string
        $rootScope.number = "" + $rootScope.number + number;
    } else {
        $rootScope.number = "" + number;
    }
}
$rootScope.number = "";