我需要避免文本框中的第一个字符值为-
符号。
$(document).on("keypress", "#form_name", function() {
if ($('#form_name').val().substr(0, 1) == "-") {
return true
} else {
return false
}
});
我正在尝试这种方法,但它无法正常工作。
请指导我解决问题。
答案 0 :(得分:2)
您需要交换所提供的内容:
$(document).on("keyup", "#form_name", function() {
if ($('#form_name').val().substr(0, 1) == "-") {
$('#form_name').val("");
return false;
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<input id="form_name" />
我还添加了一条小错误消息。看看:
$(".error").hide();
$(document).on("keyup", "#form_name", function() {
if ($('#form_name').val().substr(0, 1) == "-") {
$('#form_name').val("");
$(this).next(".error").fadeIn();
return false;
} else
$(this).next(".error").fadeOut();
});
.error {display: inline-block; vertical-align: middle; padding: 2px; border: 1px solid #f00; background: #f66; color: #fff; font-weight: bold; font-size: 0.8em; border-radius: 3px;}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<input id="form_name" />
<span class="error">Cannot start with -.</span>
答案 1 :(得分:1)
$(document).on("keyup", "#form_name", function() { //when a user types in input box
var formValue = this.value;
if ( formValue.charAt( 0 ) == '-' ) {
return false;
} else {
return true;
}
});