JQuery验证远程功能不显示验证消息

时间:2019-06-11 11:44:45

标签: jquery jquery-validate

我刚刚开始学习JQuery validate,并且在尝试使用远程功能时遇到了一个问题(毫无疑问是我自己做的)。

对我的动作的调用可以正常工作,并且正在使用我的API并返回我期望的值,我也已经在console.log()中测试了该调用的输出,因此我很高兴能够进行该调用并返回值。

当返回值为true时,不会出现验证消息。确实存在UniqueMappingRef,因此错误消息中说明了这一点。

我已经看到了一个答案,但是这似乎只允许一个远程功能,而在这个问题中,我将需要另外四个功能:

当前完全没有消息。

该代码在“规则”部分中,称为UniqueMappingRef

    $("#ProjectPrepForm").validate({
        onkeyup: false,
        rules: {
            ProjectName: {
                required: true
            },
            UniqueMappingRef: {
                required: true,               
                remote: {
                    type: "POST",
                    url: "/ProjectPrep/CheckUniqueMappingRef/",
                    data: {
                        'internalRef': function () {
                            return $('#UniqueMappingRef').val()
                        }
                    },
                    success: function (d) {                        
                        if (d == true) {
                            messages:{
                                UniqueMappingRef: 'It already exists.'
                            }

                        }
                    },
                    error: function (request, status, errorThrown) {
                        alert(status);
                    }
                }
            }            
        },
        messages: {
            ProjectName: {
                required: 'Enter an project name'
            },
            UniqueMappingRef: {
                required: 'Enter a unique mapping reference'
            }               
        }
    });
});

问题:即使API返回正确的值,验证消息也不会针对远程调用显示。

预期结果::为true时,显示验证消息,为false时,消息消失。一旦了解了我做错了什么,我将针对不同的元素再添加四个呼吁。

0 个答案:

没有答案