此功能的目标是在允许数字(和/)之间切换文本输入,并允许默认字符,具体取决于是否在选择标记中选择了“查询”选项。
我正在做这样的事情:
function ifQueryDisableDefVal(selectId, textInput){
if(document.getElementById(selectId).value == 'Query'){
var numInput;
numInput = document.getElementById(textInput);
numInput.onkeydown = numInput.onblur = numInput.onkeyup = function(){
numInput.value = numInput.value.replace(/[^0-9\/]+/,"");
}
}else{
//What I need help with.
}
}
if语句运行得很好,除了我有“恢复”的麻烦,可以这么说,文本输入再次允许默认字符(其他)。
- 提前谢谢
答案 0 :(得分:1)
numInput.onkeydown = null
将删除事件处理程序。为您处理的所有事件执行此操作。
答案 1 :(得分:0)
正如@Bergi所说,你可以试试这个:
var numInput = document.getElementById(textInput);
numInput.onkeydown = numInput.onblur = numInput.onkeyup = function(){
if(document.getElementById(selectId).value==='Query')
{
numInput.value = numInput.value.replace(/[^0-9\/]+/,"");
}
}
希望这对你有所帮助。