我需要一个接受的验证文本框,像这样 $250.00 这里是 '$' 只会接受一次,然后永远不会接受 '$' 以及 '.'(点)。
问问题
843 次
4 回答
0
您可以使用掩码输入,例如您的掩码是
$('#input').mask('$9?.99');
于 2012-11-07T14:28:37.660 回答
0
你可以做:
var x = document.getElementById('your-text-box').value;
if(x.match(/^\$[0-9]+\.[0-9]+$/) == null) {
// invalid
}
else {
// valid
}
正则表达式/^\$[0-9]+\.[0-9]+$/
将匹配任何满足以下约束的字符串
- 应该从一个
$
- 应该有
1 or more numbers
后$
.
在第一组数字之后应该有一个- 应该在
1 or more numbers
之后结束.
于 2012-11-07T14:29:09.797 回答
0
<!-- wherever your jquery file is -->
<script src="../../jquery.min.js"></script>
<input type="text" id="cost"><input type="button" id="check" value="Check!">
<script>
// jquery solution
$(document).ready( function (){
$('#check').click( function (){
var cost = $('#cost').val();
var patt=/^(\$)?\d+(\.\d+)?$/;
var result=patt.test(cost);
alert(result);
});
});
</script>
当然你也可以使用纯java脚本来减少依赖
<input type="text" id="cost">
<input type="button" id="check" value="Check!" onClick="check();">
<script>
// Pure Javascript Solution
var check = function (){
var cost = document.getElementById('cost').value;
var patt=/^(\$)?\d+(\.\d+)?$/;
var result=patt.test(cost);
alert(result);
}
</script>
于 2012-11-07T14:51:45.967 回答