Newer
Older
EMS-WEB-3.0 / src / main / webapp / s / media / js / sensor-edit.js
wxn on 9 Aug 2016 4 KB first commit
var SensorEdit = function () {

    return {
        //main function to initiate the module
        init: function () {
        },
        initForms:function(){

            var form = $('#submit_form');
            var error = $('.alert-error', form);
            var success = $('.alert-success', form);

            $('#cancelBtn').live('click', function (e) {

                location.href = $("#context").val() + "/content/dev/sensor-list.jsp";

            });

            if($("#sensorCode").val()) {

                $('#submit_form #sensorCode').attr("disabled","disabled");

            }

            form.validate({
                doNotHideMessage: true, //this option enables to show the error/success messages on tab switch.
                errorElement: 'span', //default input error message container
                errorClass: 'validate-inline', // default input error message class
                focusInvalid: false, // do not focus the last invalid input
                rules: {
                    devCode: {
                        required: true
                    },
                    sensorCode: {
                        required: true,
                        remote: {
                            url: $('#context').val()+"/sensor/exist.do",
                            data:{
                                sensorCode: function() {
                                    return $('#sensorCode').val();
                                }
                            }
                        }
                    },
                    deviceId: {
                        minlength: 3,
                        required: true
                    },
                    sensorTypeCode: {
                        minlength: 3,
                        required: true
                    }
                },
                messages: { // custom messages for radio buttons and checkboxes
                    sensorCode: {
                        remote: "该传感器编码已被注册"
                    }
                },
                errorPlacement: function (error, element) { // render error placement for each input type

                    error.insertAfter(element); // for other inputs, just perform default behavoir

                },

                invalidHandler: function (event, validator) { //display error alert on form submit
                    success.hide();
                    error.show();
                    App.scrollTo(error, -200);
                },

                highlight: function (element) { // hightlight error inputs
                    $(element)
                        .closest('.help-inline').removeClass('ok'); // display OK icon
                    $(element)
                        .closest('.control-group').removeClass('success').addClass('error'); // set error class to the control group
                },

                unhighlight: function (element) { // revert the change dony by hightlight
                    $(element)
                        .closest('.control-group').removeClass('error'); // set error class to the control group
                },

                success: function (label) {
                    label
                        .addClass('valid ok') // mark the current input as valid and display OK icon
                        .closest('.control-group').removeClass('error').addClass('success'); // set success class to the control group

                },

                submitHandler: function (form) {
                    //add here some ajax code to submit your form or just call form.submit() if you want to submit the form without ajax
                    $.ajax( {
                        type: "POST",
                        url: $('#context').val()+"/sensor/sensor-save.do",
                        //  dataType:'json',
                        //TODO LIST:按条件查询服务器数据
                        //   data: JSON.stringify($('#submit_form').serialize()),
                        data: $('#submit_form').serialize(),
                        success: function(data) {

                            var jData = eval(data);
                            if(jData.success==true) {

                                location.href = $("#context").val() + "/content/dev/sensor-list.jsp";
                            }
                            else{
                                success.hide();
                                $("#errorMessage").html(jData.message);
                                error.show();
                            }
                        },
                        error:function(request){
                            success.hide();
                            error.show();
                        }
                    });
                }
            });


        }

    };

}();