0
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;
}

为什么上述方法不起作用?不能在“标记”的表单类型上使用 ahah 和事件吗?我必须使用自己的自定义 javascript 吗?

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

4

1 回答 1

1

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

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

于 2012-01-06T16:08:20.117 回答