【问题标题】:drupal Select cck onchange handlerdrupal Select cck onchange 处理程序
【发布时间】:2010-11-10 08:37:48
【问题描述】:

我正在通过以下方式将 onchange 处理程序添加到所有 cck 字段。

function bday_form_event_node_form_alter(&$form, &$form_state) { 
  $form['title']['#attributes'] = array('onchange' => "titleval()");
  $form['#after_build'][] = 'bday_form_event_node_form_cck_alter';
}
function bday_form_event_node_form_cck_alter($form, &$form_state) {
  $form['field_date1'][0]['value']['#attributes'] = array('onchange' => "dateval()"); //Text Field
 $form['field_city']['#attributes'] = array('onchange' => "cityval()"); //Select Field
}

Select 的 Onchange 处理程序未添加到 dom 中。

【问题讨论】:

  • 为什么在 html 中添加这个,而不是使用 .js 文件 / jQuery?

标签: drupal select onchange


【解决方案1】:

在 googletorp 所说的基础上建立一点点。

这不是在 drupal 中向表单添加行为的方式。

drupal 附带了一个非常好的JS api,它可以帮助您执行此操作。

你想要的大概是这样的。

Drupal.behaviors.myModuleBehavior = function(context) {
  $('.title').change(function() {titleval() }) ;
  $('.field_date1').change(function() {dateval()});
  $('.field_city').change(function() {cityval()});
}

【讨论】:

    猜你喜欢
    • 2020-02-28
    • 2022-01-18
    • 1970-01-01
    • 1970-01-01
    • 2018-05-20
    • 1970-01-01
    • 1970-01-01
    • 2022-12-24
    • 1970-01-01
    相关资源
    最近更新 更多