在Drupal中,您可以在自定义模块中创建自己的节点类型.这样你就可以创建自己的表格,这非常好.
但是,如果你想添加js表格,事情会变得有点棘手.如果在表单中添加js,js将仅在加载时从表单中添加.如果用户发布带有验证错误的表单,则表单函数不会再次运行,因此不会添加js.通常你只需创建一个菜单回调并在那里添加js,但对于节点添加表单,这不是一个可能的解决方案.
解决方法
尝试一些不同的黑客,我找到了一个非常简单的解决方案来解决这个问题,为表单创建一个主题函数并在那里添加js.这看起来像这样:
function theme_content_type_node_form($form) { drupal_add_js(...); return theme('node_form',$form); }
这只是在添加js后调用节点添加表单的默认主题函数.由于调用了主题函数,即使表单被缓存,这也很有效.您还需要实现hook_theme才能使其工作.
Drupal 7的更新.
Drupal 7可以让它变得更容易
$form['#attached']['js'][] = 'path_to_js_file;
使用它的一个例子可能是:
$form['#attached']['js'][] = drupal_get_path('module','foo') . '/js/foo.form.js';