每个输入填充的FullScreenForm验证

时间:2015-10-08 15:41:08

标签: javascript jquery ajax validation

我试图让这个表单在我的网站上运行:http://tympanus.net/Development/FullscreenForm/

我的目标是在提交时验证每个输入,并在有输入时显示错误。

为此,我已经对每个验证进行了ajax调用,以检查是否存在错误。 (后端已为此做好准备)

但是我遇到了2个问题: 它是异步调用,因此它不会进入流程并在ajax调用完成之前验证。

其次,当我对数据有错误并尝试启动this._showError(错误)时,它表示它不是一个函数。

如何在函数中找到this._showError?

以下是代码:

    FForm.prototype._validade = function() {

    var fld = this.fields[this.current],
        input = fld.querySelector( 'input' ) || fld.querySelector( 'textarea' ) || fld.querySelector( 'select' ),
        error,
        data = {'form_class': this.form_class, 'field': fld.querySelector('input').name, 'data': fld.querySelector('input').value};
        $(input).prop('disabled', true)
        $.ajax({
          type: "POST",
          url: '/core/validate_field',
          data: data,
          dataType:'json',
        }).done(function(data){
            if (data['status'] === 'error') {
                error = data['message'];
                this._showError( error );
                return false;
            }
            $(input).prop('disabled', false);
        }

        )
    if( error != undefined ) {
        this._showError( error );
        return false;
    }

    return true;
}

// TODO
FForm.prototype._showError = function( message ) {

    this.msgError.innerHTML = message;
    this._showCtrl( this.msgError );
}

1 个答案:

答案 0 :(得分:0)

这是回答我所做问题的代码

$css = "color:#000000;";
$color = substr($css, strpos($css, ':')+1, 7);

// Color is #000000
echo $color;

如果您有任何建议,欢迎:)