2013-05-14 40 views
1

爲什麼這將工作JQuery的

$("body").on("click",".open_popup",function(event){ 

     event.preventDefault(); 

     $("#form1").show(); 

    }) 

但對象內部相同的代碼,像這樣:

var popUpFormulario = { 

       openWith: function() { 
     self=this; 

     $("body").on("click",".open_popup",function(event){ 

      event.preventDefault(); 

      $("#"+self.id+"").show(); 

     }) 
    } 

,然後調用這樣

popUpFormulario.openWith() 

功能只是不會?我不明白。有人可以向我解釋嗎?在此先感謝

+1

其中'popUpFormulario'沒有'id'屬性'so($#「#」+ self.id +「」)''會給出$(「#undefined」)'不存在 – 2013-05-14 11:43:39

+0

爲什麼你想要做這個,你期望'self.id'是什麼 – 2013-05-14 11:52:54

回答

0

你的問題看起來是這一行:$("#"+self.id+"").show();(這並不需要最後一個「」,所以$("#"+self.id).show(),但是這不是問題)

selfthis這是openWith功能,顯然沒有DOM元素ID。