Вы связываетесь с событием изменения для каждого ввода данных и сохраняете эти пары имя-значение в глобальном массиве или в скрытых полях формы.
Альтернативой может быть добавление «измененного» класса к каждому редактируемому полю.Затем, когда они отправляют форму, вы можете либо создать новую форму только с измененными элементами класса, либо удалить другие элементы из вашей формы, содержащие все текстовые входы.
<input type="text" class="data_input" name="name1" value="value1" />
<input type="text" class="data_input" name="name2" value="value2" />
...
<input type="text" class="data_input" name="nameX" value="valueX" />
Затем в вашем JS
$(document).ready(function() {
$(".data_input").change(function() {
$(this).addClass('changed');
});
Или, если вы хотите использовать глобальный массив:
var changedArr = [];
$(document).ready(function() {
$(".data_input").change(function() {
changedArr.push({'name': $(this).attr('name'), 'value': $(this).val()});
});