Ajax-метод getJSON работает асинхронно, поэтому ваш метод возвращает «существует» до того, как запросил у сервера возвращаемое значение.Таким образом, вам нужно сделать ajax-запрос async = false, например:
UPD: Хорошо, посмотрите полную версию вашей функции:
function empvalidate() {
var exists = false; // default return value is false
var empno = $("#empno").val();
if (empno != '') {
$.ajax({
url: "emp.php",
async: false,
dataType: "json",
data: {'param1': $("#param1").val(), 'empno': $("#empno").val()},
success: function (data) {
exists = data.status; // set status of existence to outer variable
}
});
}
return exists; // return actual value
}
TakeЯ не проверял приведенный выше код, поэтому вам необходимо понять причину каждой строки кода.