Вы пытаетесь сначала получить индекс объекта, а затем пытаетесь обновить его, но ваша логика c неверна и, следовательно, вы не получаете точный объект для обновления.
Попробуйте приведенный ниже код, в котором вы можете выполнить итерацию data
объект, чтобы получить объект с соответствующим идентификатором и обновить его внутри l oop вместо того, чтобы сначала получить индекс, а затем обновить.
$(function(){
var data = [{id:1, inputobjarr:{accordionid:"accordionid||1", parentdivclass:"parentdivclass||col-md-12 form-inline cust-align", type:"type||text", 'lablename-class':"lablename-class||col-md-2 heading form-group", lablename:"lablename||", tablerowhideflag:"tablerowhideflag||0", placeholder:"placeholder||"}},{id:2, inputobjarr:{accordionid:"accordionid||1", parentdivclass:"parentdivclass||col-md-12 form-inline cust-align", type:"type||text", 'lablename-class':"lablename-class||col-md-2 heading form-group", lablename:"lablename||", tablerowhideflag:"tablerowhideflag||0", placeholder:"placeholder||"}},{id:3, inputobjarr:{accordionid:"accordionid||1", parentdivclass:"parentdivclass||col-md-12 form-inline cust-align", type:"type||text", 'lablename-class':"lablename-class||col-md-2 heading form-group", lablename:"lablename||", tablerowhideflag:"tablerowhideflag||0", placeholder:"placeholder||"}}];
$("body").on('keyup','.getupdateinputs',function(e) {
var inputid = $(this).data('knownid');
var nametochange = $(this).attr('id');
var changevalue = $(this).val();
$.each(data, function(key, value){
var id = value.id;
if(id == inputid) {
var obj = value.inputobjarr;
obj[nametochange] = nametochange+'||'+changevalue;
}
});
console.log(data);
});
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input class="getupdateinputs" id="1" data-knownid="1"><br/>
<input class="getupdateinputs" id="2" data-knownid="2"><br/>
<input class="getupdateinputs" id="3" data-knownid="3"><br/>