2013-02-08 65 views
0

我有一個圖像在.cs文件中定義了「href」標記的InnerHTML,如下所示。如何在jQuery中添加和刪除事件?

HtmlGenericControl _divToolTipContainer = new HtmlGenericControl("div"); 
_divToolTipContainer.InnerHtml = "<a href=\"javascript:__doPostBack('" + btnItemThumbnail.ClientID.Replace("_", "$") + "','')\">" + 
           <img src='" + string.Format("ItemPreview.axd/{0}/width-250/height-328/", item.ID.ToString()) + "'></a>; 

現在,我想要的是有這樣的「A HREF」事件「刪除」說,如果條件是(假),否則再次使用jQuery「添加」事件。示例代碼如下所示。

var objectDiv = document.getElementById(oElementId); // get the object id 

If (false){ // condition here 
    remove the event of the a href tag.. 
    jquery code must be added here.. 
}else{ 
    add the event again of the a href tag.. 
    jQuery code must be added here.. 
} 

如何做到這一點?

感謝

傑森

回答

1

你不妨使用jQuery選擇由ID的元素一樣,所以

(function($) { 

    var objectDiv = $("#"+oElementId); // get the object id 

    if(false) 
    { // condition here 
     objectDiv.removeAttr("href"); 
    } 
    else 
    { 
     objectDiv.attr("href", "javascript:__doPostBack('" + btnItemThumbnail.ClientID.Replace("_", "$") + "','')"); 
    } 

})(jQuery); 

編輯:您可能必須來包裝你的代碼中(函數($),以確保您的代碼使用$ for jQuery

+0

出現錯誤...它不是函數 – user1306165

+0

立即嘗試我的上述代碼。 (注意:你將不得不將所有在'if else'語句中使用的東西包裝進去) –

+0

現在仍在工作,我仍然可以點擊圖片,它會轉到正在提供的href位置。 – user1306165

1
if (false) { 
    $('#oElementId').off('click', function() {}); 
} else { 
    $('#oElementId').on('click', function() {}); 
} 
+0

它不能正常工作 – user1306165