在AJAX调用中撤消复选框中的preventDefault

时间:2015-04-29 20:47:17

标签: javascript jquery ajax

当用户尝试检查未选中的复选框时(如果已经选中它我什么都不做),我会阻止复选框被检查并通过AJAX调用进行验证。但我无法弄清楚如何再次“检查”它。我尝试使用$(this).trigger('click');但它不起作用。

我也尝试将preventDefault移至fail条件。但这使得电话无法正常工作。我猜因为AJAX调用改变了范围。

$(document).ready(function(){
    $('input:checkbox').click(function(e) {
        if( $(this).prop('checked') &&  $(this).val()=='on' )
        {
            e.preventDefault();

            var name = $(this).attr('name');
            var pivot_attendee_program = name.split(/\]\[|\[|\]/);
            var data = {
                        'pivot' : pivot_attendee_program[0],
                        'attendee_id' : pivot_attendee_program[1],
                        'program_id' : pivot_attendee_program[2]
                       };

            //console.log(data);

            $.ajax({
                type: "GET",
                url: '{{ route('ageCheck') }}',
                data: data,
                success: function(result){

console.log('success');
                    if(result == 'pass'){
                        console.log('pass');
                        $(this).trigger('click');
                    }
                    else{ //result == 'fail'

                        console.log('fail');

                    }


                },
                error: function(result){
                    alert(JSON.stringify(result));
                }

            });

                    //validate Age
                    //ajax  check age of attendee against program                       
                    //ajax  check age of attendee against program_seg

        }

    });

});

0 个答案:

没有答案