我已经建立了一个"快速链接"下拉选择框为我的基于Drupal的Web应用程序.该选择框被实现为标准Drupal的形式,出现在网站中的所有网页.当用户选择一个选项,并提交表单,我想将用户重定向到相应的页面,而是让他们回到原来的页面时,他们已经完成.
例如,用户是在节点/ 5,并且选择一个快速链接其中他们带到另一种形式.当他们完成此表单时,我希望将它们返回到node/5.
我已经在系统的其他部分使用drupal_get_destination将?destination = node/5 querystring参数附加到目标表单来实现这一点,这很好用.但是,在我的快速链接表单提交处理程序中,我设置了form_state ['redirect']来设置目标页面,如果我添加了?destination =参数,它会被URL编码,因此在我的目标时不会被选中表格已提交.
function dh_seo_quick_links_form_submit($form, &$form_state) {
$form_state['redirect'] = $form['#link_targets'][$link].'?'.drupal_get_destination();
}
Run Code Online (Sandbox Code Playgroud)
我完全走错了路吗?这种重定向甚至可能吗?我可以直接使用$ _REQUEST变量做一些聪明的事吗?
我在drupal中有表格,上传图片并且里面有很少的复选框.这是表格:
$form['checklist_fieldset'] = array(
'#type' => 'fieldset',
'#title' => t('Check List'),
'#collapsible' => FALSE,
'#collapsed' => FALSE,
);
$form['checklist_fieldset']['heating'] = array(
'#type' => 'checkboxes',
'#title' => t('Heating options'),
'#options' => array(
'0' => t('Yes'),
'1' => t('No')
),
'#description' => t('Heating details.')
);
Run Code Online (Sandbox Code Playgroud)
这是我的提交功能,我正在处理图像上传和抓取复选框值.我收到成功消息,图像上传但没有获得复选框的值.
function property_add_view_submit($form,&$form_state){
$validators = array();
if($file = file_save_upload('p_file1',$validators,file_direcotry_path)){
$heating = array_keys($form_state['values']['heating']);
drupal_set_message(t('Property Saved! '.$heating));
dpm( $form_state['values']['heating']);
}
Run Code Online (Sandbox Code Playgroud) 为了寻找一个看似简单的问题的答案,在Drupal社区页面上搜索的时间到目前为止没有结果,所以希望你能帮忙!
任何人都可以用自定义形式用FAPI来描述如何实现'nodereference_autocomplete'类型的输入元素?对于初学者来说,这是一个AJAX装饰的文本字段,它在CCK模块提供的匹配引用节点的字段上自动完成.我想在我自己的Drupal 6模块中利用这个功能.
提交的值必须是引用节点的nid.此外,最受欢迎的是关于将自动完成路径限制为仅包括"文章"和"博客"类型的节点的说明.
感谢您对这个最基本的问题的帮助!
我有一个带有图像字段的内容类型。用户可以创建内容并上传图像。我想不会允许用户更改/删除图像,一旦它被上传,但仍显示节点编辑表单上的图像。所以我只需要禁用/删除图像字段中的“删除”按钮。我尝试了以下(通过 hook_form_alter),但没有奏效:
$form['field_image']['#disabled'] = TRUE;
Run Code Online (Sandbox Code Playgroud)
下面的工作,但它完全隐藏了图像元素,这不是我所追求的:
$form['field_image']['#access'] = FALSE;
Run Code Online (Sandbox Code Playgroud)
请帮助找到解决方法。
我希望用户能够通过AJAX提交节点和评论.我还想对节点和注释表单做一些相当广泛的自定义.
我花时间浏览了Drupal 7的Form API和Ajax框架的文档和代码示例,但我发现它非常复杂.因此,我只想在HTML中创建自己的表单,并使用我自己的JavaScript代码通过Ajax提交它.我还将设置一个特定的URL来处理这些Ajax请求,这些URL将最终调用node_save()或comment_save()在适当的时候调用.
与通过Form API和Ajax框架相比,这样做有什么缺点?我不是在为社区做贡献而创建模块.一切都只适用于我自己的网站.
搜索了一个适用于多步注册表单的稳定模块,这样我就可以用这个注册表单替换drupal的内置注册表单.
我发现的只是drupal表格api的教程,但我需要一个模块.
drupal ×6
drupal-forms ×6
drupal-7 ×3
drupal-6 ×2
drupal-fapi ×2
drupal-ajax ×1
registration ×1