0

我需要有一个字段,如果它返回“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", "");}
4

1 回答 1

1

尝试这个:

if(j.ok != true){$("#ponumber").attr("disabled", "disabled");
}
于 2013-01-08T00:20:56.310 回答