在Drupal中,我如何使用js来响应CCK“添加另一个项目”按钮?

时间:2011-07-12 02:36:20

标签: jquery forms drupal

我附加了一些改变字段的js(即根据在另一个选择字段中选择的内容限制选择字段的选项)。

但是,我只知道如何对调用$(document).ready时存在的字段做出反应。我不知道如何检测新字段的创建(即,在CCK无限值字段中使用“添加另一个项目”按钮创建的字段),以便也改变该字段。

与Drupal中的所有内容一样,答案是jQuery中非常基本的东西或者非常复杂的东西。我是一个jQuery新手,所以我希望它是前者。

1 个答案:

答案 0 :(得分:0)

如果你正在使用更高版本的jQuery,你可以使用.live函数,但由于Drupal在jquery上落后一点,你需要使用Drupal Behaviors。从DOM中插入/删除新项目时要运行的任何javascript代码都必须在行为中声明,以便在调用Drupal.attachBehaviors时触发它。

在Drupal 6中,它看起来像是:

Drupal.behaviors.myModule = function (context) {
  //Code here is run when the DOM is updated (if Drupal.attachBehaviors is called)
};

和Drupal 7:

Drupal.behaviors.myModule = {
 attach: function (context, settings) { // code here for when items are attached},
 detach: function (context, settings) { // code here for when items are detached}
};