所以我想检测用户在输入中输入的值是否存在于数据库中,如果存在,则显示错误消息。我已经非常接近,除非输入为空,提交空值而不是要输入的GOING。
$("#email").on("blur", function(){
var val = $(this).val(), id = $("#id").val();
$.ajax({
method: 'GET',
url: '/msg',
data: {
action: "check_title",
email: val,
id: id
},
success: function(data) {
$(".error-msg").text(data);
}
})
});
我也尝试了一个keyup
函数,它仍然在做同样的事情,评估空字段。我怎么能拥有它以便不断评估输入内容?
答案 0 :(得分:1)
此代码段创建一个id为“in”的输入,并检查in值是否有值。我想这更具体地回答了你的问题。并且感谢“Jeff Puckett II”指出这一点。
$('#in').on('input focusout', function(){
var val = $('#in').val();
if (val != ""){
console.log('someones typing');
} else {
console.log('empty');
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<body>
<input id="in" type="text">
</body>
尝试.on('input')
而不是.on('blur')
$("#email").on("input", function(){//do something});
答案 1 :(得分:1)
与Jeff Puckett的答案一样,我会执行空测试,如果为空则返回一条教学信息:
$("#email").on("blur", function(){
var val = $(this).val(), id = $("#id").val();
if (val.length < 1 || val==""){
alert('Please complete all fields');
$('#email').css('background','yellow').focus();
return false;
}
$.ajax({
method: 'GET',
url: '/msg',
data: {
action: "check_title",
email: val,
id: id
},
success: function(data) {
$(".error-msg").text(data);
}
});
});
答案 2 :(得分:1)
//in your function just add
if(!val) {
$(".error-msg").text("Empty!");
}
//or
if(val) {
//your ajax code
}
答案 3 :(得分:0)
首先检查输入是否为空
$("#email").on("blur", function(){
var val = $(this).val(), id = $("#id").val();
// check if val is empty
if (val != "")
$.ajax({
method: 'GET',
url: '/msg',
data: {
action: "check_title",
email: val,
id: id
},
success: function(data) {
$(".error-msg").text(data);
}
})
});
答案 4 :(得分:-1)
使用它:
$('input').keyup(function(){
console.log($(this).val());
});
每次用户键入焦点输入时,keyup或keydown都可以获取数据。