Pergunta

a pergunta diz tudo. eu tenho uma página asp.net usando jQuery. No começo, quando eu cliquei no botão enviar, ele iria mostrar o erro objeto esperado. eu corri o Firebug e exibido o erro de 'validar return ()' função que foi adicionado onClientClick do botão.

  <script type="text/javascript">
    $(document).ready(function() {
        // add custom validation methods
        $.validator.addMethod('phone', function(value, el, params) {
            return this.optional(el) || /^[0-9,+,(), ,]{1,}(,[0-9]+){0,}$/.test(value);
        }, 'Please enter a valid phone number');

        $.validator.addMethod('numbers', function(value, el, params) {
            return this.optional(el) || /^[0-9]+$/.test(value);
        }, 'Invalid entry. Only Numeric is allowed.');


        $.validator.addMethod('domainurl', function(value, el, params) {
            return this.optional(el) || /^(http\:\/\/(?:www\.)?[a-zA-Z0-9]+(?:(?:\-|_)[a-zA-Z0-9]+)*(?:\.[a-zA-Z0-9]+(?:(?:\-|_)[a-zA-Z0-9]+)*)*\.[a-zA-Z]{2,4}(?:\/)?)$/.test(value);
        }, 'Please enter a valid domain url');


        $.validator.addMethod('selectone', function(value, element) {
            return this.optional(element) || (value.indexOf("none") == -1);
        }, 'Please select an option.');



        $("#form1").validate({
            debug: true,
            rules: {
                txt_name: {
                    required: true,
                    minlength: 2
                },
                txt_cmp: {
                    required: true,
                    minlength: 2
                },
                txt_tel1: {
                    phone: true,
                    required: true,
                    minlength: 3

                },
                txt_tel2: {
                    phone: true,
                    required: false,
                    minlength: 3

                },
                txt_mob: {
                    phone: true,
                    required: false,
                    minlength: 9

                },
                txt_email: {
                    required: true,
                    email: true
                },

                txt_domname: {
                    required: true,
                    domainurl: true
                },

                radiobt_domain: "required",

                ddl_yremail: {
                    required: true,
                    selectone: true
                },
                ddl_email: {
                    required: true,
                    selectone: true
                },

                txt_space: {
                    required: true,
                    numbers: true

                },
                txt_calfr: {
                    required: true
                },
                txt_calto: {
                    required: true
                }  


        },
        messages: {
            txt_name: {
                required: "This field is required",
                minLength: "Please enter a valid name"
            },
            txt_cmp: {
                required: "This field is required",
                minLength: "Please enter a valid commpany name"
            },
            txt_tel1: {
                required: "This field is required",
                minLength: "Please enter a valid telephone number"

            },
            txt_tel2: {
                minLength: "Please enter a valid telephone number"
            },
            txt_mob: {
                minLength: "Please enter a valid mobile number"

            },
            txt_email: {
                email: "Please enter a valid email address",
                required: "This field is required"
            },

            txt_domname: {
                required: "This field is required"
            },
            radiobt_domain: "Select the Hosting Type"
        }

    });
});
</script>

i removido-lo, e agora o botão enviar ainda não está funcionando. o código do lado do servidor não está em execução. ele não está mostrando nenhum erro. eu não consigo descobrir o que é o problema.


Eu publiquei o código aqui: esperado - jquery

Foi útil?

Solução

EDIT: Depois de ver o código. A razão pela qual a forma não está submetendo mesmo depois de remover a chamada para Validate () no seu botão é porque você tem debug: true, isso impede o envio do formulário. Alterá-lo para depuração:. Falso e irá apresentar

 $("#form1").validate({
            debug: false,
            .....

Outras dicas

Eu acredito que o problema é que o envio do formulário não está funcionando porque você tem um erro de javascript análise. você pode verificar o console do Firebug para ver se existem quaisquer erros que ocorrem quando a página é carregada. Quaisquer erros de javascript são susceptíveis de quebrar o processo de envio do formulário.

Olhando para a sua pergunta anterior, eu acho que você não pode ter incluído o plugin de validação desde validar não está definido. Este erro é provavelmente ainda ocorrendo e o resto do javascript na página -. Incluindo todo o ASP.NET acrescentou javascript não pode ser analisado

Você tem um script incluem para o plugin de validação? seria algo parecido com isto:

 <script type="text/javascript" src="..../jquery.validate.js"></script>
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top