У вас есть несколько div "alertmessage"? Если это так, вы загружаете все из них, а не только один. Лично я бы так не поступил. Вместо этого попробуйте:
<select name="..." id="shift13" class="alert">
...
</select>
<div id="alert13" class="alertmessage shift13"></div>
с:
$(function() {
$("select.alert").change(function() {
$("div.alertmessage." + this.id).load("messages.php",
{id: this.id}, function() {
alert(this.id); // alert13
});
});
});
- (imho) гораздо более чистое решение, чем циклический просмотр и создание повторяющихся обработчиков событий. По сути, закодируйте необходимую информацию в элементах. В приведенном выше коде поле со списком предоставляет идентификатор для вызова AJAX и связывает его с соответствующим DIV для загрузки.