попробовал на dojo - знаю плохо
если у select установлен атрибут multiple надо будет доработать
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<title>demo</title>
<script type='text/javascript' src='https://ajax.googleapis.com/ajax/libs/dojo/1.6.0/dojo/dojo.xd.js.uncompressed.js'></script>
<script>
dojo.ready(function() {
var dSelect = dojo.query('select'),
oldIndex = dSelect[0].selectedIndex;
dSelect.onchange(function () {
if (!confirm("Поменять данные")) {
this.selectedIndex = oldIndex; // возврат старого значения
}
oldIndex = this.selectedIndex; // запоминаем текущее
});
});
</script>
</head>
<body>
<select>
<option>1</option>
<option>2</option>
<option>3</option>
</select>
</body>
</html>