Javascript 当值为0-Angular.js时,在数字和范围输入中添加占位符而不是值

Javascript 当值为0-Angular.js时,在数字和范围输入中添加占位符而不是值,javascript,jquery,angularjs,input,Javascript,Jquery,Angularjs,Input,我有一个数字和范围输入,使用Angular.js value使用相同的值一致工作。当值设置为0时(这是页面加载时的默认值$scope.lbs_needed=0;),每当数字或范围输入的值设置为0时,我想显示一个占位符=“0”,这样,0值就不会出现在用户输入的前面,而用户无需手动删除默认值0 这是我的html: <form> <div class="form-group"> <label for="number">Pounds of ni

我有一个数字和范围输入,使用Angular.js value使用相同的值一致工作。当值设置为0时(这是页面加载时的默认值
$scope.lbs_needed=0;
),每当数字或范围输入的值设置为0时,我想显示一个
占位符=“0”
,这样,0值就不会出现在用户输入的前面,而用户无需手动删除默认值0

这是我的html:

<form>
    <div class="form-group">
        <label for="number">Pounds of nitrogen desired per acre:</label>
        <input type="number" class="form-control number-input" id="number" ng-model="lbs_needed" ng-change="calculate2()" value="{[{lbs_needed}]}" min="0" max="500" value="{[{lbs_needed}]}" placeholder="0">
        <input type="range" min="0" max="500" class="form-control" id="number" ng-model="lbs_needed" ng-change="calculate2()" value="{[{lbs_needed}]}" placeholder="0">
    </div>
</form>

每英亩所需的氮磅数:

因此,如果我理解正确,您希望文本框有一个默认值,但也希望它可以立即更改,而用户不必在默认值上退格

试试这个:

var input=document.getElementById('change-default');
input.onfocus=函数(){
如果(input.value==0){
input.value='';
}
}
input.onblur=函数(){
如果(输入值=“”){
input.value='0';
}
}

那么,如果我理解正确,您希望文本框有一个默认值,但也希望它可以立即更改,而用户不必在默认值上退格

试试这个:

var input=document.getElementById('change-default');
input.onfocus=函数(){
如果(input.value==0){
input.value='';
}
}
input.onblur=函数(){
如果(输入值=“”){
input.value='0';
}
}