我剛剛開始使用JQuery,我需要更改兩個元素的css類並刪除它們的onclick事件處理程序。JQuery從父元素中選擇基於多個類的子元素
當單擊upDown類中的三個元素中的任何一個時,會彈出一個彈出窗口。當點擊該彈出框中的按鈕時,將調用vote_click()。
我需要禁用類「向上」和「向下」,但沒有其他人的元素。
<div class="upDown">
<div class="up" id="ctl04_btnUp" onclick="lastClick=this;" ></div>
<div class="com" id="ctl04_btnCom" onclick="lastClick=this;"></div>
<div class="down" id="ctl04_btnDown" onclick="lastClick=this;"></div>
</div>
這是我嘗試
var lastClick; //will be set to either the "up" or "down"
function vote_click() {
if (lastClick && lastClick.className != "com") {
$("#"+lastClick.parentElement.id + " > .up .down").each(
function(index, e) {
alert('disabled ' + this.id);
this.onclick = null;
this.className += '-ya';
}
);
lastClick = null;
}
}
我明明不知道我這樣做對我的做法任何一般性意見,將不勝感激。
剛剛看到您的編輯。感謝您的解釋。我渴望使用內聯onclicks,但他們有選擇地生成服務器端。有些羣體得到他們,有些則沒有。你會建議我爲父元素添加一個虛假的類,用於應該點擊啓用的元素,並使用修改後的事件掛鉤方法,例如你所取得的方法,或者讓它們內聯。我從來沒有真正理解爲什麼內聯聲明不如代碼美學那麼不可取。 – Laramie 2010-06-25 04:51:41
@Laramie看到我的編輯。 – 2010-06-25 06:12:39
A +1爲詳盡解釋和建議閱讀。 – Laramie 2010-06-25 06:35:34