js代码太臃肿了,求大神优化

这个是ajax给html赋值的感觉这样的代码好垃圾了,之前没做过前端,对javascript也只是稍微了解。。。js代码里面包含了很多拼接html字符串的代码,感觉重复代码很多,一个文件写了4000多行代码,但又不知道怎么优化,有大神帮忙指点下吗

 function updatemodal16(){
              $.ajax({ 
                    cache: true,
                    type: "POST",
                    dataType:'json',
                    url:'/hszx/queryConsumerByCID.do',
                    data:{C_ID:$('#currentCID').val()},
                    async: false,
                    success: function(data) {
                        loadsource(data.c_SOURCE);//客户来源
                        loadproduct(data.c_BUYPRODUCT);//购买产品
                        $('#C_ID_1').val(data.c_ID);
                        $('#C_NAME_1').val(data.c_NAME);
                        $('#C_TYPE_1').val(data.c_TYPE);
                        $('#C_NUMBER_1').val(data.c_NUMBER);//编号
                        $('#C_PHONE_1').val(data.c_PHONE);//公司电话
                        $('#C_ZIPCODE_1').val(data.c_ZIPCODE);//公司邮编
                        $('#C_PORTRAITURE_1').val(data.c_PORTRAITURE);//传真
                        $('#C_PROVINCE_1').val(data.c_PROVINCE);//省份
                        $('#C_ADDRESS_1').val(data.c_ADDRESS);//地址
                        $('#C_URL_1').val(data.c_URL);//网址
                        $('#C_USERNAME_1').val(data.oldUSERNAME);//所有者
                        $('#C_USERNAME_SHOW_1').val(data.oldUSERNAMESHOW);
                        $('#C_COMPANYTYPE_1').val(data.c_COMPANYTYPE);//公司类型
                        $('#C_NOTE_1').val(data.c_NOTE);
                    }
            });



                        function getContacts(){
            var dataObj = '';
             $.ajax({
                     type: "POST",
                     url: "/hszx/queryContactsByCID.do", 
                        data: {C_ID:$('#currentCID').val()},
                        dataType: "json", 
                        success: function(result){
                              dataObj = result;
                               var str = '<div class="contact"><a href="javascript:void(0)" data-toggle="modal" data-target="#myModal3"><img src="static/img/create_contact.png" style="width:100%;height:100%;border-radius:10px;"></a></div>'
                                 $.each(dataObj, function(index, item){
                                    str+='<a href="javascript:void(0)" onclick="openContact('+item.ct_ID+')">'
                                    +'<div class="contact"><p class="contact_p">'+item.ct_NAME+'</p>'
                                    +'      <ul class="contact_ul">';

                                    if(item.ct_POSITION.length>15){
                                        str+='          <li ><font color="#8E8080">职务:</font>'+item.ct_POSITION.substring(0,15)+'...</li>';
                                    }else{
                                        str+='          <li ><font color="#8E8080">职务:</font>'+item.ct_POSITION+'</li>';
                                    }

                                    if(item.ct_CELLPHONE.length>15){
                                        str+='          <li><font color="#8E8080">手机:</font>'+item.ct_CELLPHONE.substring(0,15)+'...</li>';
                                    }else{
                                        str+='          <li><font color="#8E8080">手机:</font>'+item.ct_CELLPHONE+'</li>';
                                    }

                                    if(item.ct_TELEPHONE.length>15){
                                        str+='          <li><font color="#8E8080">电话:</font>'+item.ct_TELEPHONE.substring(0,15)+'...</li>';
                                    }else{
                                        str+='          <li><font color="#8E8080">电话:</font>'+item.ct_TELEPHONE+'</li>';
                                    }

                                    if(item.ct_EMAIL.length>15){
                                        str+='          <li> <font color="#8E8080">邮箱:</font>'+item.ct_EMAIL.substring(0,15)+'...</li>';
                                    }else{
                                        str+='          <li> <font color="#8E8080">邮箱:</font>'+item.ct_EMAIL+'</li>';
                                    }

                                    str+='      </ul>'
                                    +'  </div>'
                                    +'</a>';
                                });
                             $('#contact_content').html(str);       
                        }    
                 })
        }
 你的dom id起规则点,和返回的json键名称一致或者大部分一致,就可以通过each遍历赋值,如下面的,你的id第一个字母应该改小写c,和data一致,不要搞个大写,又要处理一便增加代码
$.ajax({ 
            cache: true,
            type: "POST",
            dataType:'json',
            url:'/hszx/queryConsumerByCID.do',
            data:{C_ID:$('#currentCID').val()},
            async: false,
            success: function(data) {
                loadsource(data.c_SOURCE);//客户来源
                loadproduct(data.c_BUYPRODUCT);//购买产品
                $('#C_ID_1').val(data.c_ID);
                $('#C_NAME_1').val(data.c_NAME);
                $('#C_TYPE_1').val(data.c_TYPE);
                $('#C_NUMBER_1').val(data.c_NUMBER);//编号
                $('#C_PHONE_1').val(data.c_PHONE);//公司电话
                $('#C_ZIPCODE_1').val(data.c_ZIPCODE);//公司邮编
                $('#C_PORTRAITURE_1').val(data.c_PORTRAITURE);//传真
                $('#C_PROVINCE_1').val(data.c_PROVINCE);//省份
                $('#C_ADDRESS_1').val(data.c_ADDRESS);//地址
                $('#C_URL_1').val(data.c_URL);//网址
                $('#C_USERNAME_1').val(data.oldUSERNAME);//所有者
                $('#C_USERNAME_SHOW_1').val(data.oldUSERNAMESHOW);
                $('#C_COMPANYTYPE_1').val(data.c_COMPANYTYPE);//公司类型
                $('#C_NOTE_1').val(data.c_NOTE);
            }
        });
    ===》
            $.ajax({ 
            cache: true,
            type: "POST",
            dataType:'json',
            url:'/hszx/queryConsumerByCID.do',
            data:{C_ID:$('#currentCID').val()},
            async: false,
            success: function(data) {
                loadsource(data.c_SOURCE);//客户来源
                loadproduct(data.c_BUYPRODUCT);//购买产品
                                //记得将dom对象第一个C_改为c_/////////////////////////////////////////////////////
                for(var attr in data){$('#'+attr+'_1').val(data[attr]);

            }
        });

拆开,,放不同的文件里,,引入即可(看起来干净了,其实一样的)

function getContacts(){
    var dataObj = '';
    $.ajax({
            type: "POST",
            url: "/hszx/queryContactsByCID.do", 
            data: {C_ID:$('#currentCID').val()},
            dataType: "json", 
            success: function(result){
                    dataObj = result;
                    var str = '<div class="contact"><a href="javascript:void(0)" data-toggle="modal" data-target="#myModal3"><img src="static/img/create_contact.png" style="width:100%;height:100%;border-radius:10px;"></a></div>'
                    $.each(dataObj, function(index, item){
                        str+='<a href="javascript:void(0)" onclick="openContact('+item.ct_ID+')">'
                            +'<div class="contact"><p class="contact_p">'+item.ct_NAME+'</p>'
                            +'      <ul class="contact_ul">';
                            +'          <li><font color="#8E8080">职务:</font>'+subString(item.ct_POSITION,15)+'</li>';
                            +'          <li><font color="#8E8080">手机:</font>'+subString(item.ct_CELLPHONE,15)+'</li>';
                            +'          <li><font color="#8E8080">电话:</font>'+subString(item.ct_TELEPHONE,15)+'</li>';
                            +'          <li> <font color="#8E8080">邮箱:</font>'+subString(item.ct_EMAIL,15)+'</li>';
                            +'      </ul>'
                            +'  </div>'
                            +'</a>';
                        });
                    $('#contact_content').html(str);       
            }    
    })
}
function subString(text,len){
    var result = text.substring(0,len);
    if(text.length > len){
        result += '...'
    }
    return result
}