drupal – 表单提交带有其他参数的处理程序

对于某些要求,我需要传递其他信息以形成提交处理程序.在表单api中,将自定义提交处理程序定义为
$additional_args = array();
$form['#submit'][] = 'my_submit_handler'

我希望提交处理程序为

function my_submit_handler($form,&$form_state,$additional_args){

解决方法

提交处理程序由drupal fapi调用,因此你不能做那样的事情.相反,你可以做的是将你需要的东西添加到$form或$form_state.通常的方法是:

>在表单中添加了一个字段,键入值以存储该值.如果表单定义中包含值,请不要这样做.

$form['store'] = array(
  '#type' => 'value','#value' => $value
);

这将在$form_state [‘values’] [‘store’]中提供.
>将值添加到$form_state [‘storage’],如果要将验证句柄中的变量转移到提交处理程序,请执行以下操作:

// Validation.
$form_state['storage']['value'] = $value;

...

// Submit
$value = $form_state['storage']['value'];
// Need to unset stored values when not used anymore.
unset($form_state['storage']['value']);

相关文章

操作步骤 1、进入elasticsearch的plugin,进入ik。进入config。 2、在config下面建立以.dic为后缀的字典...
lengend data数据中若存在'',则表示换行,用''切割。
代码实现 option = { backgroundColor: '#080b30', tooltip: { trigger: &...
问题原因 原因在于直接在js中取的变量并复制给var变量。 于是就变成这样。 解决办法 var data = &#...
前言 最近做了一个调查问卷导出的功能,需求是将维护的题目,答案,导出成word,参考了几种方案之后,选...
对于很多人来说,用字符编码都是熟能生巧,而不清楚为什么是那样的字符编码,所以我在这列了一个表,翻...