簡體   English   中英

如何通過url將選擇列表的值傳遞給表單?

[英]How Can I pass the value of select list to a form by url?

我正在嘗試使用帶有以下HTML標記的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發送到表單?

謝謝

您可以使用正是為此目的而考慮的Prepopulate模塊。

如項目頁面所示,URL http://example.com/node/add/blog?edit[title]=this%20is%20the%20title會預填充標題, 即title

該模塊可用於所有表單,並且有一個正式版本(於2017年8月6日在5004個站點上使用)

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

屏幕截圖

截至2017年8月18日,由於不再正式支持Drupal 6,Drupal 6的模塊使用量有所減少,但由於在Drupal 7和Drupal 8站點中使用了該模塊,總使用量略有增加。

屏幕截圖

如果您轉到“ 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;
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM