我无法弄清楚为什么每次更改都会多次提醒我......
$(function(){
$("#shift_name_<?php print $shift_id;?>").change(function () {
$(".alertmessage").load("messages.php?eid="+$("#shift_name_<?php print $shift_id;?>").val(), function(data<?php print $shift_id;?>) {
if(data<?php print $shift_id;?>!=''){
alert(data<?php print $shift_id;?>);
}
});
});
});
基本上,有一些循环并基于php变量给出特定的id。但是,当我更改一个时,它会提醒我x次,其中x是页面上存在的数字......
答案 0 :(得分:2)
你有多个“alertmessage”div吗?如果是这样,你将加载到所有这些而不仅仅是一个。就个人而言,我不会这样做。而是尝试:
<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)比循环和创建重复事件处理程序更清晰的解决方案。基本上,编码元素中所需的信息。在上面,组合框的ID提供了AJAX调用的ID,并将其链接到要加载的相关DIV。