2012-11-17 43 views
0

我想用下面的HTML标记发送带有表单URL的选择列表的值。如何通过url将选择列表的值传递给表单?

<select class="form-select" name="field_with_contact[und]" id="edit-field-with-contact-und"><option value="_none">- None -</option><option value="26">Rawhi Pharmacy</option></select> 

表格URL是http://www.example.com/node/add/deal

如何将值26发送到表单?

谢谢

+0

什么意思“发送值的形式”?你的意思是把价值提交给服务器?你的意思是通过查询字符串提交值? –

回答

1

您可以使用这被认为正是这种目的Prepopulate模块。

如项目页面所示,类似http://example.com/node/add/blog?edit[title]=this%20is%20the%20title的URL将预填充标题这是标题

该模块可以用于任何形式,并且它有一个从5004 sites使用的正式版本(2017年8月6日)。

在2013年1月1日之前,该模块的用法如下。

screenshot

随着2017年8月18日的,为Drupal 6模块的使用减少,因为Drupal的6官方不支持了,但总使用量略有由于增加了它的用法Drupal 7和Drupal 8网站。

screenshot

0

如果你去 “www.mysite.com/node/add/deal/26” 下面的代码将打印URL传入的数字是:26

这里是代码:

function my_module_menu() 
{ 
    $items = array(); 


    $items['node/add/deal/%'] = array(
     'title'   => 'Add deal', 
     'page callback' => 'drupal_get_form', 
     'page arguments' => array('node_add_deal_form', 3), 
     'access callback' => array(TRUE), 
     'type'   => MENU_CALLBACK, 
    ); 

    return $items; 
} 

function node_add_deal_form($form, &$form_state, $number) 
{ 
    $form = array(); 

    $form['number'] = array(
     '#markup' => '<p>The number passed in url was: '. $number. '</p>', 
    ); 

    return $form; 
} 
相关问题