jqueryajax不会在返回false时停止

jqueryajax不会在返回false时停止,jquery,Jquery,我正在通过ajax和jquery提交表单: $("#FormSubmitTexte").click(function (e) { e.preventDefault(); var form_texte_texte = tinyMCE.triggerSave(); if($("#form_titre_texte").val()==="") //simple validation { $("#di

我正在通过ajax和jquery提交表单:

$("#FormSubmitTexte").click(function (e) {

        e.preventDefault();
                var form_texte_texte = tinyMCE.triggerSave();
        if($("#form_titre_texte").val()==="") //simple validation
        {
            $("#dialog").html(messages.saisir_titre);
                            $("#dialog").attr('title',messages.erreur);
                $( "#dialog" ).dialog({
                    buttons: {
                        "Ok": function() {
                          $( this ).dialog( "close" );
                        }},
                                show: {effect: 'puff', duration: 100},
                                hide: {effect: 'puff', duration: 100}
                        });
            return false;
        }

if ($("#form_tags_texte").val() != "") {
            var matches = $("#form_tags_texte").val().match(/^[\w -ÀÁÂÃÄÅàáâãäåÒÓÔÕÖØòóôõöøÈÉÊËèéêëÇçÌÍÎÏìíîïÙÚÛÜùúûüÿÑñ,]+$/);
                    if (matches) {
                    }else{
                        $("#dialog").html(messages.tags_car);
                                $("#dialog").attr('title',messages.erreur);
                    $( "#dialog" ).dialog({
                        buttons: {
                            "Ok": function() {
                              $( this ).dialog( "close" );
                            }},
                                    show: {effect: 'puff', duration: 100},
                                    hide: {effect: 'puff', duration: 100}
                            });
                return false;
                    }
                    var tableau_tags = $("#form_tags_texte").val().split(',');
                    $.each(tableau_tags, function(index, chunk) {
                        var taille = chunk.length;
                        if (taille > 20) {
                            $("#dialog").html(messages.tags_taille);
                                $("#dialog").attr('title',messages.erreur);
                    $( "#dialog" ).dialog({
                        buttons: {
                            "Ok": function() {
                              $( this ).dialog( "close" );
                            }},
                                    show: {effect: 'puff', duration: 100},
                                    hide: {effect: 'puff', duration: 100}
                            });
                return false;
                        }
                    });
                }


        var myData = {titre : $("#form_titre_texte").val(), billet : $("#form_texte_texte").val(), tags_texte : $("#form_tags_texte").val()}
                var tinymce_editor_id = 'form_texte_texte';
        jQuery.ajax({
            type: "POST", // HTTP method POST or GET
            url: "texte", //Where to make Ajax calls
            dataType:"text", // Data type, HTML, json etc.
            data:myData, //post variables
            success:function(response){
            $("#responds").before(response);
            $("#form_titre_texte").val(''); 
            $("#form_tags_texte").val('');
                        tinymce.get(tinymce_editor_id).setContent('');
                        //$.getScript("include/ajax_save_billets.js");
            },
            error:function (xhr, ajaxOptions, thrownError){
                alert(thrownError); //throw any errors
            }
        });
返回false时,所有控件均正常工作,但检查元素大小的控件除外(如果(taille>20)); 我不明白为什么。。。你能看到这个代码有什么错误吗?
谢谢

每个函数的返回值都是False…你需要将返回值设置为False

var isValid=true;
    $.each(tableau_tags, function(index, chunk) {
      if (taille > 20) {
       //do something
       isValid=false;
      }
    }
    if(!isValid)
    {
     return isValid
    }

像这样的东西会有用的

谢谢。现在它在错误时停止,但如果它是对的,它不会执行ajax请求……好的,明白了!循环之前缺少变量声明(isValid=true)。谢谢你的帮助!