重写bootstrapvalidator.js的remote方法,通过我们自己的方法判断成功失败

            //这里必须重写它的逻辑
            function runCallback() {
                var xhr = $.ajax(ajaxOptions);


                xhr.then(function (response) {
                    if (response.code === 200) {

                        response.data.valid = (response.data[validKey] === true || response.data[validKey] === 'true')
                            ? true
                            : (response.data[validKey] === false || response.data[validKey] === 'false' ? false : null);

                        dfd.resolve($field, 'remote', response.data);

                    } else {

                        dfd.resolve($field, 'remote', {
                            valid: false
                        });
                    }

                });


                dfd.fail(function () {
                    xhr.abort();
                });

                return dfd;

                //服务端默认全部请求成功
                // if (xhr.readyState === 4) {
                //     console.log(xhr)
                //     console.log(xhr)
                //     if (xhr.responseJSON.code === 200) {
                //
                //         response.valid = (response[validKey] === true || response[validKey] === 'true')
                //             ? true
                //             : (response[validKey] === false || response[validKey] === 'false' ? false : null);
                //
                //         dfd.resolve($field, 'remote', response);
                //
                //     }else{
                //
                //         dfd.resolve($field, 'remote', {
                //             valid: false
                //         });
                //     }
                // }


                // else{
                //
                //     dfd.fail(function() {
                //         xhr.abort();
                //     });
                //
                // }


                // xhr
                //     .success(function(response) {
                //
                //         response.valid = (response[validKey] === true || response[validKey] === 'true')
                //                         ? true
                //                         : (response[validKey] === false || response[validKey] === 'false' ? false : null);
                //
                //         dfd.resolve($field, 'remote', response);
                //     })
                //     .error(function(response) {
                //         dfd.resolve($field, 'remote', {
                //             valid: false
                //         });
                //     });
                //
                // dfd.fail(function() {
                //     xhr.abort();
                // });
                //
                // return dfd;
            }
上一篇:三、方法栈


下一篇:fetch的优点