【发布时间】:2012-11-27 13:01:44
【问题描述】:
我正在使用 asp.net 3.5
我有一个在“悬停”事件上运行良好的 jquery 函数。
浏览器刷新某些 div 后出现问题 使用 ajax 调用。
从那时起浏览器忽略 悬停事件并且不调用 jquery 函数。 刷新页面后才恢复正常。
* 进行我正在使用的 ajax 调用
<asp:UpdatePanel ID="UpdatePanel4" runat="server" UpdateMode="Always"> <ContentTemplate runat="server"> <div id='map' runat="server"></div> </ContentTemplate> </asp:UpdatePanel>
--这是jquery函数--
$(function() {
$('a.trigger').hover(function() {
var index = $(".trigger").index(this);
var pop=document.getElementById("pop_up");
var place=document.getElementsByClassName('place')[index ];
var car_id=document.getElementsByClassName('car_id')[index];
var enter_time=document.getElementsByClassName('time')[index ];
pop.innerHTML="Park At: "+place.innerHTML+"</br>Car Id:"+car_id.innerHTML+"</br>Enter At:"+enter_time.innerHTML;
$('div#pop_up').show();
}, function() {
$('div#pop_up').hide();
});
});
--这是ajax回调后没有响应的div--
<div id="pop_up" runat="server"> <p id='who_parks_here' runat="server"></p> </div>
【问题讨论】:
-
尝试用
$('a.trigger').live("hover", function() {替换$('a.trigger').hover(function() { -
on或live会有所帮助 -
.live()函数已被弃用数月,没有人 应该编写使用它的新代码。使用.on()(jQuery 1.7+) 或.delegate()。
标签: jquery asp.net ajax updatepanel