我需要有一个字段,如果它返回“false”消息,则不允许输入数据。“ponumber”字段检查数据库,如果该记录已经存在,我不希望它允许用户使用该特定的采购订单号。基本上,如果他们离开该字段并显示消息,它会将其空白。该脚本运行良好,除了现在允许基于 checkponumberajax php 文件的错误返回的输入。
$(document).ready(function () {
var validateponumber = $('#validateponumber');
$('#ponumber').keyup(function () {
var t = this;
if (this.value != this.lastValue) {
if (this.timer) clearTimeout(this.timer);
validateponumber.removeClass('error').html('<img src="/images/ajax-loader.gif" height="16" width="16" /> checking availability...');
this.timer = setTimeout(function () {
$.ajax({
url: 'includes/checkponumberajax.php',
data: 'action=check_ponumber&ponumber=' + t.value,
dataType: 'json',
type: 'post',
success: function (j) {
validateponumber.html(j.msg);
}
});
}, 200);
this.lastValue = this.value;
}
});
});
<input type="text" name="ponumber" value="<?=@$_REQUEST['ponumber']?>" id="ponumber" />
我的 checkponumber.php 文件像这样返回
if ($records != 0) {
$response = array(
'ok' => false,
'msg' => "The selected PO# is not available");
} else {
$response = array(
'ok' => true,
'msg' => "This PO# is free");
}
编辑:解决了!
我最终感谢@bourch 使用它,一旦达到与 false 匹配的值,它就会简单地清除该字段
if(j.ok != true){$("#ponumber").attr("value", "");}