проблема с проверкой jquery - PullRequest
0 голосов
/ 11 января 2011

У меня есть простая форма с 6 текстовыми полями. Я использую Ajax для сохранения информации. Когда я нажимаю кнопку редактирования, валидатор jQuery обнаружил ошибку, но разрешил отправить. На самом деле это работает только для последнего ввода!

Я использовал class = "number fillone", чтобы проверить их, чтобы ввести только число, а также ввести хотя бы один из 6 ...

$('#edit_midterm').click(function() {

    $("#edit_midterm_form").validate({
        rules:{
            queiz: {number:true, max:6,
            seminar:{number:true, max:6,
            tamrin:{number:true, max:6,
            midterm:{number:true, max:6},
            tahghigh:{number:true, max:6},
            project:{number:true, max:6}
        },
        require_from_group: [1,".fillone"],
        submitHandler: function() 
        {
            $("#loading_edit").ajaxStart(function(){$(this).show();});
            $("#loading_edit").ajaxStop(function(){$(this).hide();});

            $.ajax({
                type:"POST",
                url:"course/term/ajax_mlist.php",  
                data:($("#edit_midterm_form").serialize()),
                success:function(data){
                if((data.result)=='true')
                    $("#result_edit").html(data.message);
            }, 
            dataType:"json"});
            return false;
        }


    });
});

а это моя форма:

<form name="edit_mid" action="" id="edit_midterm_form" method="post">
        <input type="hidden" name="type" value="edit">
        <input type="hidden" name="operation" value="yes">
        <input type="hidden" name="ic" value="'.$id.'">
        <table class="list" width="100%" border="0" align="center" cellspacing="1" cellpadding="5" dir="rtl">
        <tr>
            <th colspan="2">Edit Form</th>
        </tr>
        <tr>
            <td width="100">Quize</td>
            <td><span class="red_error"><input type="text" name="queiz" id="queiz" max="6" class="number fillone" value="'.$object->queiz_1.'"></span></td>
        </tr>
        <tr>
            <td>Lecture</td>
            <td><span class="red_error"><input type="text" name="seminar" id="seminar" max="6" class="number fillone"  value="'.$object->seminar_3.'"></span></td>
        </tr>
        <tr>
            <td>home Work</td>
            <td><span class="red_error"><input type="text" name="tamrin" id="tamrin" max="6" class="number fillone"  value="'.$object->tamrin_5.'"></span></td>
        </tr>
        <tr>
            <td>Midterm</td>
            <td><span class="red_error"><input type="text" name="midterm" id="midterm" max="6" class="number fillone"  value="'.$object->midterm_2.'"></span></td>
        </tr>
        <tr>
            <td>Search</td>
            <td><span class="red_error"><input type="text" name="tahghigh" id="tahghigh" max="6" class="number fillone"  value="'.$object->tahghigh_4.'"></span></td>
        </tr>
        <tr>
            <td>project</td>
            <td><span class="red_error"><input type="text" name="project" id="project" max="6" class="number fillone"  value="'.$object->project_6.'"></span></td>
        </tr>
        <tr>
            <td></td>
            <td><input type="submit" id="edit_midterm" value="Edit" class="buttom_edit">
            <img src="../template/icon/ajax_loader_1.gif" id="loading_edit">
            <span id="result_edit"></span>
            </td>
        </tr>
      </table></form>

Ответы [ 2 ]

1 голос
/ 11 января 2011

Не знаю, какую ошибку вы получаете, но я сразу вижу, что отсутствуют некоторые закрывающие фигурные скобки:

rules:{
                        queiz: {number:true, max:6},
                        seminar:{number:true, max:6},
                        tamrin:{number:true, max:6},
                        midterm:{number:true, max:6},
                        tahghigh:{number:true, max:6},
                        project:{number:true, max:6}
                        },
0 голосов
/ 11 января 2011

На самом деле здесь Rong, в моем коде это правильно.проблема в том, что когда я использую этот код для контроля, по крайней мере, введите один из 6, другой не работает.

в моей форме это работает только для последнего!

jQuery.validator.addMethod("require_from_group", function(value, element, options) {
    numberRequired = options[0];
    selector = options[1];
    var validOrNot = $(selector, element.form).filter(function() {
         return $(this).val();
      }).length >= numberRequired;

    if(!$(element).data('being_validated')) {
    var fields = $(selector, element.form);
    fields.data('being_validated', true).valid();
    fields.data('being_validated', false);
    }
    return validOrNot;

}, jQuery.format("please enter {0} Of this"));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...