Condition not to send field in ajax

0

Hello

Is there a way to not send the password field via ajax, if it is empty?

As it is, it is sending as empty and replacing the value of the field with empty, so I would like to send this field only if it is different from empty.

function form_objeto() {    
    var senha = $('#txt_senha').val();
    if (senha !== null){        
        _obj_operador.nome     = $('#txt_nome').val();
        _obj_operador.cpf      = remove_mascara($('#txt_cpf').val());
        _obj_operador.login    = $('#txt_login').val();
        _obj_operador.senha    = $('#txt_senha').val();
        _obj_operador.situacao = $('#sel_situacao').val();

    } else {
        _obj_operador.nome     = $('#txt_nome').val();
        _obj_operador.cpf      = $('#txt_cpf').val();
        _obj_operador.login    = $('#txt_login').val();
        _obj_operador.situacao = $('#sel_situacao').val();

    }
}
//Função Salvar
function salvar() {
    form_objeto();
    if (salvar_operador()) {        
	    atualizar_tabela();
	    $('#modal_operador').modal('hide');
	toastr.success('Operador salvo com sucesso');
     }
}
//Método Salvar
function salvar_operador() {
     var url;
     if(_metodo_salvar == 'novo') {
	url = "operador/novo";
     } else {		
	url = "operador/atualizar";
     }
	
	$('#btn_salvar').html('<i class="fa fa-spinner fa-spin"></i> Salvando');
	$('#btn_salvar').attr('disabled', true);
	
    var ret;
    $.ajax({
        type: 'POST',
        async: false,
        datatype: 'json',		
		url : url,
		data: { 'objeto': JSON.stringify(_obj_operador) },
        success: (function (data) {
            _obj_operador = data;            
			$('#btn_salvar').html('<i class="fa fa-save"></i> Salvar');
            $('#btn_salvar').attr('disabled', false);
            limpar_modal();
            ret = true;
		}),
        error: (function (erro) {
            //TrataErroAjax(erro);
			alert(erro);
            ret = false;
		})
	});
    return ret;
}
    
asked by anonymous 20.09.2017 / 04:53

1 answer

1

.

function form_objeto() {    
 var senha = $('#txt_senha').val();
 if (senha !== null){        
    _obj_operador.nome     = $('#txt_nome').val();
    _obj_operador.cpf      = remove_mascara($('#txt_cpf').val());
    _obj_operador.login    = $('#txt_login').val();
    _obj_operador.senha    = $('#txt_senha').val();
    _obj_operador.situacao = $('#sel_situacao').val();

 } else {
    delete _obj_operador.senha; //aqui você está removendo a senha

    _obj_operador.nome     = $('#txt_nome').val();
    _obj_operador.cpf      = $('#txt_cpf').val();
    _obj_operador.login    = $('#txt_login').val();
    _obj_operador.situacao = $('#sel_situacao').val();

 }
}
    
20.09.2017 / 05:12