ajax - 通过单击表单中的链接进行 drupal ajax 调用

标签 ajax forms drupal hyperlink

单击 Drupal 中的链接时如何使用 AJAX 提交表单?

function search_form($form,$form_state) {
  $form['support_email'] = array(
    '#theme' => 'link',
    '#text' => '',
    '#ajax' =>array(
      'callback' => 'ajax_change',
      'wrapper' => 'email-hidden',
      'method' => 'replace',
      'click' => 'true',
    ),
  );
}

这是我在表单内的表单链接。单击链接时,我希望调用 AJAX 回调函数 ajax_change,但这似乎没有发生。

最佳答案

#ajax 的表单 API 引用功能说它“用于:按钮、复选框、复选框、图像按钮、密码、单选、单选、选择、提交、表选择、文本区域、文本格式、文本字段”。链接不在列表中,因此不起作用。 #ajax 功能使 Drupal 在指定的表单元素更改时执行 AJAX 调用。由于链接不会更改,因此它不起作用是合乎逻辑的。

Asaf (ajax submit for any form)模块也许能够帮助您实现您想做的事情。

此外,您似乎正在尝试使用此 AJAX 来隐藏元素。 Forms API 有一个 states可以轻松有条件地显示/隐藏元素的功能。阅读 this有关州的更多信息。

#ajax 回调用于创建动态更改自身的表单。

关于ajax - 通过单击表单中的链接进行 drupal ajax 调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18026951/

相关文章:

javascript - 如何让 Spine.js Ajax 持久性工作

javascript - 遵循 jquery get() 方法中的重定向 URL

javascript - 使用 react 路由器导航时保存数据

css - 我可以使用纯 CSS 将不可编辑的文本放入表单域吗?

php - 在 GET 请求中保留值

mysql - 使用 Mysql 复制的 Drupal 8 安装

javascript - 如何在数据表中过滤 AJAX 调用的输出?

javascript - AJAX 请求、表单提交中出现解析器错误

php - 动态 JavaScript 表单,无 HTML 表单

iPhone + Drupal + JSON RPC 服务器问题