Drupal 6:使用AHAH作为具有标记类型的表单


drupal 6: using ahah for forms with markup types

function MyModule_menu() {
  $items['blah'] = array(
    'title' = 'blah',
    'page callback' => 'blah_page',
    'type' => MENU_NORMAL_ITEM
  );
  $items['clickPath'] = array(
    'title' => 'A title',
    'page callback' => 'clickPath_page',
    'type' => MENU_CALLBACK,
  );
  return $items;
}
function blah_page() {
  $output = drupal_get_form(MyModule_form);
  return $output;
}
function clickPath_page() {
  return ('you clicked me!');
}
function MyModule_form($form,&$form_state) {
  $output = '<div id="clickDiv">Click me</div>';
  $form['blah'] = array(
    '#type' => 'markup',
    '#value' => $output,
    '#ahah' => array(
      'event' => 'click',
      'path' => 'clickPath',
      'wrapper' => 'clickDiv',
    ),
  );
  return $form;
}

为什么上述方法不起作用? 是否可以在"标记"的表单类型上使用啊哈和事件? 我必须使用自己的自定义 JavaScript 吗?

你可以在这里停止阅读! 我想在这里结束我的句子和问题,但堆栈溢出迫使我输入最少的字符。 提前道歉!!!

如果您查看"特殊元素"下的表单 API,您会发现markup表单类型不支持 #ahah 属性。

所以恐怕在这种情况下你将不得不滚动自己的 JS,或者将markup元素转换为普通的表单元素(它看起来不适合你的目的(。