Вы можете использовать jQuery
подстановочный знак в качестве селектора.
$('[name^=glosa], [name^=ajuste]').bind("change keyup input", function() {
//Get the group number
var group = $(this).attr('name').match(/\[(.*?)\]/)[1];
//Get the values
var valaut = $('[name="valaut[' + group + ']"]').val();
var glosa = $('[name="glosa[' + group + ']"]').val();
var ajuste = $('[name="ajuste[' + group + ']"]').val();
//Check if number
if (!isNaN(valaut) && !isNaN(glosa) && !isNaN(ajuste)) {
//Calculate apagar
var apagar = Number(valaut) - Number(glosa) + Number(ajuste);
//Set value for apagar
$('[name="apagar[' + group + ']"]').val(apagar);
} else {
//Some input non numbers. Clear the apagar
$('[name="apagar[' + group + ']"]').val("");
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="hidden" id="valaut[]" name="valaut[0]" value="100" />
<input type="text" id="glosa[]" name="glosa[0]" value="10" />
<input type="text" id="ajuste[]" name="ajuste[0]" value="5" />
<input type="text" id="apagar[]" name="apagar[0]" value="0" />
<br/><br/>
<input type="hidden" id="valaut[]" name="valaut[1]" value="200" />
<input type="text" id="glosa[]" name="glosa[1]" value="0" />
<input type="text" id="ajuste[]" name="ajuste[1]" value="0" />
<input type="text" id="apagar[]" name="apagar[1]" value="0" />
Примечание: Я не совсем уверен, что формула, которую я использовал, точна в том, что вам нужно.Вы можете изменить его.