JavaScript 检查特定字符
javascript check for specific characters
我正在尝试在javascript中创建一个计时器,并且我已经让它工作了,但是我正在尝试暂时验证用户的输入。目前,只要输入框不为空,它就会接受任何内容。但我只想只允许数字,冒号(:)和句点 (.),我看了几个问题,但大多数问题似乎只检查所有文本字符。
这是工作代码:https://jsfiddle.net/hLqayL1w/
或
.HTML:
<div class="maincont">
<h2>Please enter a amount of time</h2>
<p id="timer">0:00</p>
<div class="container">
<input id="request" type="text" placeholder="Time">
<button type="submit" class="click">Start timer</button>
</div>
<P id="cancelbutton" class="cancel">Cancel timer</P>
</div>
.JS:
$(document).ready(function() {
$('#cancelbutton').hide();
});
$('.click').click(function() {
var conts = $('#request').val();
if ($('#request').val() === "") {
return;
}
$('.container').hide();
$('#cancelbutton').fadeIn('slow');
var rawAmount = $('#request').val();
var cleanAmount = rawAmount.split(':');
var totalAmount = parseInt(cleanAmount[0] | 0) * 60 + parseInt(cleanAmount[1] | 0);
$('#request').val(" ");
var loop, theFunction = function() {
totalAmount--;
if (totalAmount == 0) {
clearInterval(loop);
$('#cancelbutton').hide();
$('.container').fadeIn('slow');
}
var minutes = parseInt(totalAmount / 60);
var seconds = parseInt(totalAmount % 60);
if (seconds < 10)
seconds = "0" + seconds;
$('#timer').text(minutes + ":" + seconds);
$('#cancelbutton').click(function() {
totalAmount = 1
});
};
var loop = setInterval(theFunction, 1000);
})
在您的示例中,您只需检查输入是否为空字符串,让我们更改它,以便我们检查它是否与正则表达式匹配:
if (!$('#request').val().match(/[0-9:.]/gi)) {
return;
}
我们让它寻找数字,冒号和点,其他一切都不匹配,返回将运行。
这是一个工作示例。
(这只是一个快速而肮脏的例子,它并没有展示正则表达式应该以这种方式编写,可能有更好的方法来编写它)
这个怎么样?
$('#request').keyup(function() {
var el = $(this),
val = el.val();
el.val(val.replace(/[^'d':.]/gi, ""));
}).blur(function() {
$(this).keyup();
});
它将检查输入是否为数字/./:,如果不是,它将实时删除它。
$(document).ready(function() {
$('#cancelbutton').hide();
});
$('#request').keyup(function() {
var el = $(this),
val = el.val();
el.val(val.replace(/[^'d':.]/gi, ""));
}).blur(function() {
$(this).keyup();
});
$('.click').click(function() {
var conts = $('#request').val();
if ($('#request').val() === "") {
return;
}
$('.container').hide();
$('#cancelbutton').fadeIn('slow');
var rawAmount = $('#request').val();
var cleanAmount = rawAmount.split(':');
var totalAmount = parseInt(cleanAmount[0] | 0) * 60 + parseInt(cleanAmount[1] | 0);
$('#request').val(" ");
var loop, theFunction = function() {
totalAmount--;
if (totalAmount == 0) {
clearInterval(loop);
$('#cancelbutton').hide();
$('.container').fadeIn('slow');
}
var minutes = parseInt(totalAmount / 60);
var seconds = parseInt(totalAmount % 60);
if (seconds < 10)
seconds = "0" + seconds;
$('#timer').text(minutes + ":" + seconds);
$('#cancelbutton').click(function() {
totalAmount = 1
});
};
var loop = setInterval(theFunction, 1000);
})
相关文章:
- 必须检查长度,并在文本框中允许一些特殊字符
- 如何检查一个字符串的所有字符是否都存在于另一个字符串中
- 如何在ajax中检查密码是否小于8个字符
- 如何使用JQuery检查输入(电子邮件)字段是否包含特殊字符
- 如何检查两个字符串是否具有相同的字符,包括特殊字符
- Selenium-检查变量中的字符
- 在粘贴到文本字段Jquery时检查并突出显示不支持的特殊字符
- 用于检查特殊字符的 JavaScript 代码
- 检查最后键入的字符是否为空格
- 如何检查字符串是否包含非英语字符列表
- 检查字符串中的特定字符
- 检查任何输入或文本区域中是否存在非法字符
- Javascript 6字符和空格检查
- 检查值是否具有给定字符RegEx
- 正则表达式,用于检查输入是否有字符或至少有1个笑脸
- 检查值是否包含字符串字符
- 正则表达式 - 仅第一个字符检查非字母字符
- javascript中regex绕过了特殊字符检查
- Javascript字符串字符检查
- 拉丁字符检查