在使用Jquery的Rails 3应用程序中,我试图根据布尔字段是真还是假来动态显示/隐藏表单元素。
目前我的jquery函数看起来像这样:
$(function() {
$('#boolean').change(function(){
if ($(this).value == true) {
$('.hidden-fields').show();
} else {
$('.hidden-fields').hide();
}
});
})
如何正确地将布尔字段值传递给此函数,以便:
很抱歉这是一个简单的问题。我正试图掌握javascript并且非常感谢任何指针。
由于
答案 0 :(得分:1)
您的HTML页面上只有一个元素,其中包含 id 的布尔值吗?因为使用#boolean
将仅返回第一个。如果您有很多,则应使用boolean
的类,然后使用.boolean
引用该类的所有元素。
但问题是:
1)的示例代码将在页面加载时运行,并将自动应用于具有.boolean类的所有元素(假设您采用这种方式)。如果您想立即隐藏或显示元素,因为,例如,数据库中的值设置为false
,那么当您在ERB或HAML或任何视图中呈现页面时,应该这样做。
2)如果您将此JS附加到的元素是一个选择框或具有change()函数的东西,那么您已经准备好了。如果您想知道,当数据库更改时,此视图是否会自动更改其可见性,那么这是不同的。