2012-01-17 22 views
5

Senaryoda, form öğesinde otomatik yenileme için bir işlev yazdım ve otomatik yenileme işlevini devre dışı bırakmak için oturum açma düğmesindeki onclick olayını istiyorum.Form öğelerini devre dışı bırakmak için jquery

Otorefresh'i devre dışı bırakamıyorum ve sayfa hala yenileniyor.

Benim kodudur:

$('#form').ready(function() { //Increment the idle time counter every minute. 
    var idleInterval = setInterval("timerIncrement()", 15000); // 1 minute 

    //Zero the idle timer on mouse movement. 
    $(this).mousemove(function (e) { 
     idleTime = 0; 
    }); 
    $(this).keypress(function (e){ 
     idleTime = 0; 
    }); 
}); 

function timerIncrement() { 
    idleTime = idleTime + 1; 
    if (idleTime > 2) { // 20 minutes 
     window.location.reload(); 
    } 
} 

$('#login').ready(function() { 

    alert("working promptly"); 
    //Zero the idle timer on mouse movement. 
    $(this).click(function (e) { 
     alert("Hi In click !"); 
     $('#form').attr("disabled","true"); 
    }); 


}); 
+1

'setInterval ("timerIncrement()", 15000);' 'olmalı setInterval ("timerIncrement", 15000); 've omg, bir betikte kaç tane hata yapabilirsin? – Val

+2

Aslında, 'setInterval (timerIncrement, 15000) olmalıdır; - eval kötülüktür! –

+0

@anu Bu çok yaygın bir sorundur, 'attr' yerine 'prop' kullanın ve işe yarayacaktır. – noob

cevap

1

Sana net için aralık zamanlayıcı ihtiyacı vardır sanırım:

$(this).click(function (e) { 
    alert("Hi In click !"); 
    $('#form').attr("disabled","true"); 
    clearInterval(idleInterval); 
}); 
+1

Ben bir şey açık bir şey olmalı (idleInterval); –

+0

@Nitinvarpe Sabit! Teşekkür ederim! – falsarella

İlgili konular