2012-11-15 44 views
0

我有這樣的HTML語法:IE,jQuery的複選框不會改變

<input type="checkbox" id="openInNewWindowCheckBox" value ="some_value" /> 

和jQuery腳本:

$("#openInNewWindowCheckBox").change(function(){ 

      if($(this).is(':checked')) 
      { 

      } 
      else 
      { 

      } 

      return false; 
     }); 

,並在IE中,我只是不能改變或不變的複選框, HTML看起來是這樣的:

<input id="openInNewWindowCheckBox" type="checkbox" _just_changed="true" jQuery18203967820199374023="133" value="some_value"/> 

回答

0

據我所知,複選框更改觸發器只有在你從IE複選框模糊後。將它綁定爲點擊。

+0

沒有,它din't幫助 – kosnkov

2

返回false可防止默認操作。你嘗試返回true。

  $("#openInNewWindowCheckBox").change(function(){ 

     if($(this).is(':checked')) 
     { 
      console.log('a'); 
     } 
     else 
     { 
      console.log('b'); 
     } 

     return true; 
    }); 
+0

üR右,感謝的人 – kosnkov

+1

或者只是沒有返回值的。 – nnnnnn

+1

基本上你將一個函數綁定到事件上,所以在你不驗證某些數據的情況下返回true或false是個壞主意。但是有些情況下,您需要防止默認功能發生確切的事件,那麼您需要使用.change(function(e){....})並在您的處理程序中調用e.preventDefault() –