MooTools具有屬性Element.checked以查看指定元素是否設置爲「checked」或不是。 MooTools還允許您將「:checked」添加到您的選擇器以僅獲取匹配的選定元素。這意味着你可以做這樣的事情,以確定任何複選框是否被選中:
if ($$("input[type=checkbox]:checked").length > 0)
還是這個確定沒有複選框正在檢查:
if ($$("input[type=checkbox]:checked").length < 1)
給你掛樣表,這裏有一種方法:
$$("input[type=checkbox]").each(function(checkboxInput) {
checkboxInput.addEvent("click", function() {
// show submit button if at least 1 checkbox is checked
if (checkboxInput.checked) {
$$("input[type=submit]").each(function(submitButton) {
submitButton.removeProperty("disabled");
});
}
// hide submit button if no checkboxes are checked
if ($$("input[type=checkbox]:checked").length < 1) {
$$("input[type=submit]").each(function(submitButton) {
submitButton.set("disabled", "disabled");
});
}
});
});
如果你的提交按鈕有一個id屬性 - say,id =「formSubmitButton」你可以通過這種方式引用它,並使用稍少的代碼完成同樣的事情,而不必使用$$(「input [type = submit]」)。each(function(submitButton){...}:
$("formSubmitButton").removeProperty("disabled");
要從禁用/重新啓用按鈕變爲顯示/隱藏按鈕,您可以使用屬性style =「display:none;」設置按鈕來啓動窗體,然後調用submitButton.removeProperty(「style」 )複選框被選中時,submitButton.setStyle(「display」,「none」)不再被選中。該版本的完整代碼示例,使用提交按鈕ID:
$$("input[type=checkbox]").each(function(checkboxInput) {
checkboxInput.addEvent("click", function() {
// show submit button if at least 1 checkbox is checked
if (checkboxInput.checked) {
$("formSubmitButton").removeProperty("style");
}
// hide submit button if no checkboxes are checked
if ($$("input[type=checkbox]:checked").length < 1) {
$("formSubmitButton").setStyle("display", "none");
}
});
});