WebForm Subsumform Hook -- 8 领域 和 webforms 领域 drupal 相关 的问题

Webform submitForm hook


1
vote

问题

中文

我正在使用drupal 8和webform ::errorElement()5 。我有一个使用ajax的多步表单,启用了5页。

我需要改变确认消息,但我还无法弄清楚。我想要实现的是根据最后一个问题所选的某些表单值来更改消息。我创建了一个自定义模块并扩展了 ::errorElement()6 ,并创建了 ::errorElement()7 功能,但在提交表单后我没有看到任何东西。

再次,它通过ajax提交,因此我不确定是否与它有任何关系。

这是我迄今为止尝试过的东西

::errorElement()8

  ::errorElement()9  

表单提交,但我没有看到我的kint或set消息

英文原文

I am using drupal 8 and webform 8.x-5.0-beta25. I have a multistep form with ajax enabled, 5 pages.

I need to alter the confirmation message but I haven't been able to figure it out. What I want to achieve is change the message depending on some form values the selected on the last question. I've created a custom module and extended the WebformHandlerBase and created a confirmForm function but I am not seeing anything once the form is submitted.

Again, it is submitting through ajax so I am not sure if that has anything to do with it.

Here is what I have tried so far

/modules/custom/cbed_ux/src/Plugin/WebformHandler/QuizWebformHandler.php

<?php namespace Drupal\cbed_ux\Plugin\WebformHandler;  use Drupal\Core\Form\FormStateInterface; use Drupal\webform\WebformHandlerBase; use Drupal\webform\WebformSubmissionInterface; use Drupal\webform\WebformInterface; /**  * Form confirm handler.  *  * @WebformHandler(  * id = "quiz_handler",  * label = @Translation("Quiz Handler"),  * category = @Translation("Quiz Handler"),  * description = @Translation("Quiz Webform handler."),  * cardinality = \Drupal\webform\WebformHandlerInterface::CARDINALITY_UNLIMITED,  * results = \Drupal\webform\WebformHandlerInterface::RESULTS_PROCESSED,  * )  */ class QuizWebformHandler extends WebformHandlerBase {   public function confirmForm(array &$form, FormStateInterface $form_state, WebformSubmissionInterface $webform_submission) {     kint($webform_submission);     drupal_set_message ('submitted!!');   } } 

The form submits, but I do not see my kint or set message

     

回答列表

3
 
vote
vote
最佳答案
 

您是否将WebFormHandler附加到WebForm VIVE / Admin / struct / webform / manage / webform_id / handler?

你的 QuizWebformHandler::submitForm 方法与 WebformHandlerInterface::submitForm 定义,应该抛出致命的例外。

 

Did you attach your WebformHandler to your webform via /admin/structure/webform/manage/WEBFORM_ID/handlers?

Your QuizWebformHandler::submitForm method does not match the WebformHandlerInterface::submitForm definition and should be throwing a fatal exception.

 
 
     
     

相关问题

0  如何调用CSV资源  ( How to call a csv resource ) 
我有一个解耦的Drupal网站,我想使用CSV序列化模块调用REST资源输出CSV。我还在该特定资源中配置了REST UI以接受CSV。 我尝试用 Content-Type: application/csv ,或 Content-Type: text/csv ,我发送 _format=csv 作为get参数,但唯一的...

1  “将此字段作为自定义链接输出”设置此处链接到内容[已关闭]  ( Output this field as a custom link set here link to the content ) 
关闭。这个问题需要详细信息或清晰度。它目前不接受答案。 想要改进这个问题?添加详细信息并澄清编辑此帖的问题。 关闭 3年前。 ...

0  将重复字段的所有实例输出在一起  ( Output all instances of a repeating field together ) 
我有段落安装,正在创建具有嵌套段落的内容类型 - 因此有一个标题字段的段落,一个主体字段 - 然后在另一个段落中嵌套,这样我就可以嵌套了多个框这页纸。到目前为止这么好 - 我想学习的是输出字段,所以我可以将它们放在jQuery UI标签中。 在我的模板中我现在有: {{ content.field_tab_tit...

2  Drupal 8规则和媒体  ( Drupal 8 rules and media ) 
我想在内容发布时发布与内容相关联的媒体。 是有可能的规则吗? 如果是这样,我需要设置的条件是什么? 我所设置的条件是: 节点已发布 - 数据选择器:节点 实体有字段 - 数据选择器:节点,值:field_my_media_field ...

0  如何添加块模板建议?  ( How to add block template suggestions ) 
我希望能够将块或将块放入区域,并根据面板的选定视图模式将其主题为主题。我已经注意到自定义块和实体块之间的差异,其中一个表单为您提供了视图模式,以显示块,而另一个表单没有(自定义块)。 我希望模板建议沿着 block--provider/module--block-bundle--view-mode.html.twig...

4  搜索API eferpt在结果中是空的  ( Search api excerpt are empty in the result ) 
我在Drupal 8中安装了搜索API模块,并在搜索结果中包含摘录。 但摘录在搜索结果中始终为空。 (HTML DIV元素在内但内部没有内容) 我在论坛中搜索,并启用了从建议的设置中的"亮点" 。 但结果没有变化(我清除了缓存) 我错过了什么? ...

11  如何防止块被缓存?  ( How to prevent a block from being cached ) 
登录后。我正在添加一个侧栏块。一旦我清除缓存,那么只有更新变量或它的值。 namespace Drupal est_demoPluginBlock; use DrupalCoreBlockBlockBase; /** * Provides 'Sidebar' Block * * @Block( * ...

2  如何使用Datadefinition :: Create('list')?  ( How to use datadefinitioncreatelist ) 
答案链接到a 所有可能使用的所有类型的列表 DataDefinition::create() 。 可以使用的一个插件是 itemlist 。 但我找不到有关如何定义列表中的项目的任何文档。 我会期待这样的东西: $status_definition = DataDefinition::create('list...

1  如何更改“发布状态”复选框的标签和帮助文本?  ( How do i change the label and help text of the publishing status checkbox ) 
我们最近将我们的网站更新为Drupal 8.4,并且发布节点的小部件已从下拉列表中更改为复选框。现在,如何更改标签和复选框的文本?它无法在字段UI中更改。 ...

3  贡献D8版本的现有D7 Controm项目?  ( Contribute d8 version of an existing d7 contrib project ) 
有人可以介绍如何贡献现有D7 Controm项目的D8版本?我维护D7项目,并进一步想要添加它的D8版本。 我正在努力创建8.x.1.x开发分支。 请分享以下任何引用或步骤。 我的项目链接:检查dns 。 所以当我创建 C:UsersMyusernameAppDataRoamingComposervendordrus...

4  用CKEDITOR包装锚标记的包装内容  ( Wrapping content in anchor tags with ckeditor ) 
我正在尝试在drupal 8安装中的标记中包装html内容块: <a href="/link"><h2>Link 1</h2><h3>Subheader link 1</h3></a> ckeditor将其更改为至: <h2><a href="/link">Link 1</a></h2><h3><a...

0  如何防止在节点上显示特定段落类型(捆绑包)  ( How to prevent display of specific paragraph types bundles on nodes ) 
我有一个包含段落字段的内容类型,该段落具有可用许多段落类型。对于其中一个段落类型,我不希望它在节点中显示它,因为我在使用不同区域中的视图显示它。视图工作很大,但我无法弄清楚如何防止特定段落类型在节点上显示。我尝试使用各种钩子从渲染阵列中删除.Theme,但这也从视图中删除它。我还尝试从节点模板中的段落字段中删除段落类...

0  如何从页面标题中删除“drupal”?  ( How to remove drupal from title of page ) 
现在我有这个: 在这里,我发现了如何将此文本更改为其他文本: https: //www.drupal.org/forum/support/post-installation/2016-09-20/change-site-title-in-drupal-8 我试过: 但它没有帮助。 drupal是8...

3  从段落中引用块插件或表单?  ( Reference a block plugin or form from a paragraph ) 
是否有一种方法来引用自定义表单(用Form API构建)或一个块插件,该插件呈现相同的形式?我只看到了一种方法来引用自定义块(内容)或配置块,而不是两者。如何解决这一场景? ...

0  以节点上的以编程方式重新排列实体引用列表的顺序  ( Programmatically rearrange order of entity reference list on node ) 
我的内容类型有一个节点参考字段,允许用户输入无限量的节点。我需要以编程方式更改此列表中第一个问题。 使用下面的代码,我能够从字段中获取数据。 $node = Drupal::entityTypeManager()->getStorage('node')->load($function); $focus = $no...

4  从简单的Create-React-App制作JSON API请求时,405方法不允许错误  ( 405 method not allowed error when making a json api request from a simple create ) 
以下请求在从localhost:3000的简单创建 - react-app生成的项目运行时不允许使用405方法。我真的需要这个应用程序来运行域外(解耦)。这感觉非常像一个十字发发的问题,但我发送了 X-CSRF-TOKEN 标题令牌,并且配置了Apache,也可以接受标题。 不知道我做错了什么... Hos...

1  如何理解和修复反射不存在错误?  ( How to understand and fix a reflection does not exist error ) 
我正在尝试使用fasefumscriber来添加http标头。在D7中,我将简单地使用 drupal_add_http_header('Content-Type', 'application/javascript'); 但我认为这现在在d8中推出。我一直在谷歌上狩猎几个小时,似乎我现在需要使用enversu...

-2  如何从8.4.2升级到8.4.3? [关闭]  ( How do i upgrade from 8 4 2 to 8 4 3 ) 
关闭。这个问题需要更多聚焦。它目前不接受答案。 想要改进这个问题?更新问题,因此它仅拍摄了一个问题,只有编辑此帖。 关闭 3年前。 ...

2  显示注释作者电子邮件.html.twig  ( Show comment author e mail in comment html twig ) 
匿名用户发布评论时可以留下他们的电子邮件,但是如何在Comminy.html.twig中将此电子邮件显示为纯文本值? ...

1  邮件主题和身体使用MailManager保持空  ( Mail subject and body remain empty using mailmanager ) 
我已经摆弄了在Drupal 8中的自定义模块中发送邮件。 邮件被发送,但主题和身体是空的。 这是几天的问题,我无法让它工作。代码和var_dump在下面。我只是找不到这个问题。也许有人可以! hook_mail : <?php /** * Implements hook_mail(). */ functi...




© 2021 it.wenda123.org All Rights Reserved. 问答之家 版权所有


Licensed under cc by-sa 3.0 with attribution required.