2014-02-11 24 views
1

[已解決]jquery - 對舊值進行重做

此腳本在首次運行時工作良好。在運行期間,第二,第三等腳本首先顯示舊值var wartosc和遲顯示新值var wartoscuwaga('notice',wartosc);)。 我認爲我應該以某種方式關閉功能,但我不認爲:D。

$(function() { 
    $("#player").on('click', 'img', function() { 
     var zadanie = $("input[name^='act']:checked:enabled").val(); 
     var wartosc = $(this).attr('value'); 
     var kupka = $('.kupka').attr('value'); 
     switch(zadanie){ 
     case '2': 
      $("#dialog").dialog("open"); 
      $('.wybor').click(function(){ 
       $("#dialog").dialog("close"); 
       var ukryta = $(this).attr('value'); 
       uwaga('notice',wartosc); // my own function like alert :D 
      }) 
      break; 
     } 
    }); 
}); 
+0

您註冊一個單擊處理程序中一個又一個...這是不正確的做法 –

+0

權,我會用一個參考變量,它應該工作。 – jaksa

回答

3

由於點擊手柄在另一手柄束縛,可以綁定不止一次。在綁定新的點擊句柄之前,您應該解除綁定單擊事件。

$('.wybor').unbind('click').click(function(){...

0

當您使用.attr('value')你從HTML,而不是輸入的電流值所獲得的價值,如果它已經改變了。使用.val()爲:

var wartosc = $(this).val(); 
var kupka = $('.kupka').val(); 
+0

不,它的工作原理。我的圖像在html中看起來 jaksa

+0

你的英語很差,我想我誤解了這個問題。 – Barmar