我正在尝试使用 启用和禁用单选按钮集prototype
,具体取决于所选的另一组单选按钮。
对于前。第一组单选按钮,标记为“Wall Skins”,它们有 4 个选项 - 无 - 红色左 - 红色右 - 红色两者
第二组单选按钮,包含以下选项: - 无 - 左 - 右 - 两者
如果用户None
从第一组中选择,在第二组中,除了None
必须禁用之外的所有单选按钮。
如果用户Left
从第一组中选择,在第二组中,除了None
&之外的所有单选按钮都Left
必须被禁用。
如果用户Right
从第一组中选择,在第二组中,除了None
&之外的所有单选按钮都Right
必须被禁用。
如果用户Both
从第一组中选择,在第二组中,除了None
&之外的所有单选按钮都Both
必须被禁用。
我编写了以下脚本来实现这一点,但这似乎并不完美,它只禁用了 2nd Set 中的单个单选按钮
$('options-skin-dd').select('input[type="radio"]').each(function(element) {
element.observe('click', disableSkinInstall);
});
这options-skins-dd
是包含第一组选项的容器。
function disableSkinInstall(event) {
var element = Event.element(event);
var rel = element.readAttribute('rel');
$('options-skin-installation-labor-dd').select('input[type="radio"]').each(function(element) {
element.enable();
});
if(rel.indexOf("none")!=-1) {
$('options-skin-installation-dd').select('input[type="radio"]').each(function(element) {
if(element.readAttribute('title')=="Right" || element.readAttribute('title')=="Both" || element.readAttribute('title')=="Left") {
element.disable();
}
});
}
if(rel.indexOf("-left")!=-1) {
$('options-skin-installation-dd').select('input[type="radio"]').each(function(element) {
if(element.readAttribute('title')=="Right" || element.readAttribute('title')=="Both") {
element.disable();
}
});
}
if(rel.indexOf("-right")!=-1) {
$('options-skin-installation-dd').select('input[type="radio"]').each(function(element) {
if(element.readAttribute('title')=="Left" || element.readAttribute('title')=="Both") {
element.disable();
}
});
}
if(rel.indexOf("-both")!=-1) {
$('options-skin-installation-dd').select('input[type="radio"]').each(function(element) {
if(element.readAttribute('title')=="Left" || element.readAttribute('title')=="Right") {
element.disable();
}
});
}
}
我也尝试过使用.select()
,但这似乎也不起作用。
请让我知道,这里出了什么问题。