我有一個ActiveScaffold形式的Select下拉菜單。我試圖隱藏窗體上的一些字段,如果選擇了特定的值。何處爲ActiveScaffold表單自定義JavaScript/Prototype代碼?
一個[類似的問題] [1]發佈到ActiveScaffold Google Group,提供的Prototype代碼看起來像我所需要的,但我不知道我需要添加這個。
-
我試着服用 - 水平-子窗體-header.html.erb的副本從供應商/插件/ active_scaffold /前端/默認/視圖,將其放置在我的控制器意見的文件夾,然後添加我的腳本到它:
<script type="text/javascript">
document.observe('dom:loaded', function() { //do it once everything's loaded
//grab all the product-input classes and call 'observe' on them :
$$('.product-input').invoke('observe', 'change', function(e) {
this.up('td').next('td').down('input').hide();
});
});
</script>
...但似乎不能正常工作。如果我使用URL直接轉到表單(即http://localhost:3000/sales/20/edit?_method=get),它將起作用。但是,當我使用主列表視圖(即http://localhost:3000/sales/)測試它並通過Ajax打開表單時,它不起作用。看看HTML源代碼就不會出現。