2012-09-21 44 views
0

在我controller.js我已經功能:Firefox中的jQuery的點擊功能一點兒也不工作,MVC3

$(MyModel.addMyButtonTag).live("click", function() { 
    MyModel.addRecord(); 
}); 

,並在我的model.js我有:

var MyModel = {  
    addMyButtonTag: "#AddButton", 

    addRecord: function() { 

     //Show modal 
     $(MyModel.addMyButtonTag).modal(); 
     $('#simplemodal-container').css('height', '230px'); 
     $('#simplemodal-container').css('min-height', '0'); 
    } 
} 

這些jquery在IE8-9中運行良好,但在Firefox中它們根本不工作。有什麼建議嗎?

+2

live()不推薦使用...使用on()代替 – Elen

回答

1

的jQuery .live()已被棄用使用。對(),而不是

更多信息採取這裏http://api.jquery.com/live/

+0

與on()使用相同的概率。我使用了很多部分視圖,所以我爲什麼使用live() –

+0

你可以嘗試使用bind(http://api.jquery.com/bind/),但刷新模型後你必須再次綁定 –

+0

你有沒有編號正確的拼寫?大小寫是否正確? –

1

看看確保你的類「爲MyModel」你的生活function.Include類認定中的定義之前js第一。

它的工作對我來說:

<input type="button" id="AddButton" /> 
<script type="text/javascript"> 

     var MyModel = { 
      addMyButtonTag: "#AddButton", 
      addRecord: function() { 

       //Show modal 
       alert("ITS OK"); 
      } 
     } 


    $(MyModel.addMyButtonTag).live("click", function() { 
    MyModel.addRecord(); 
}); 


</script> 
+0

好建議謝謝,我已經使用bind(),而不是活(),這已經做了一個把戲,ta –

2
addMyButtonTag: "#AddButton" 

不能老是發現在最後逗號。

+0

是錯誤打印,我剛剛查看了實時代碼。無論如何,好的選擇,謝謝 –

+0

@newbie_developer無論出於何種原因你編輯過這個問題?逗號是一個語法錯誤,'live'是更多的性能問題,很多網站仍在使用它。 – webdeveloper