IE8 отправляет значение, поэтому проблема только в IE7 (вероятно, тоже 6, но кого это волнует).
В любом случае, один из возможных приемов - поместить значение как часть текста, скрытого, затемсобытие нажатия кнопки (с использованием JavaScript) изменяет текст кнопки на это значение.
Окончательный результат будет выглядеть следующим образом:
<button value="<%=RS("field1")%>" name="change" onclick="this.innerHTML = this.childNodes[1].innerHTML;"><span>Change</span><span style="display: none;"><%=RS("field1")%></span></button>
Кроме того, поскольку у вас это в цикле, неустановите идентификатор, чтобы избежать одновременного использования более одного элемента с одним и тем же идентификатором - он недействителен, и если по какой-либо причине вам нужен идентификатор, добавляйте к нему что-то уникальное в каждой итерации.