在Drupal Webforms中将两个Textfields复制并连接到另一个Textfields

时间:2015-08-05 02:50:38

标签: drupal-7

我有两种选择作为类型和类别。第三个是名为Index的文本字段。类型的值为12345,类别为AB,{ {1}},CD

我希望自动将索引中的值E4A视为用户选择的情况。

1 个答案:

答案 0 :(得分:0)

嘿,我试过这个并且它正在工作,你可以使用hook_form_alter,#after_build和jQuery来做到这一点。

首先使用所需字段创建您的webform。 然后创建一个自定义模块并使用hook_form_alter,我在下面添加一个示例代码,你只需要替换" hook"使用您的模块名称和" your_webform_id"使用您的网络表单ID。

function hook_form_alter(&$form, &$form_state, $form_id){
    //to check your webform id.
    //drupal_set_message($form_id);

    if($form_id == "your_webform_id"){
        $form['#after_build'] = array('_webform_after_build_handler');
    }
}

function _webform_after_build_handler(&$form, &$form_state){
    //*change the webform field id's as per your form*

    drupal_add_js('jQuery(document).ready(function(){ 
    var typ = jQuery("#edit-submitted-type").val();
    var cat = jQuery("#edit-submitted-category").val();
    if(cat != "" && typ != ""){
            jQuery("#edit-submitted-index").val(typ + cat);
        }
    jQuery("#edit-submitted-category").change(function(e){
        var typ = jQuery("#edit-submitted-type").val();
        var cat = jQuery(this).val();
        if(cat != "" && typ != ""){
            jQuery("#edit-submitted-index").val(typ + cat);
        }
    });
    jQuery("#edit-submitted-type").change(function(e){
        var typ = jQuery(this).val();
        var cat = jQuery("#edit-submitted-category").val();
        if(cat != "" && typ != ""){
            jQuery("#edit-submitted-index").val(typ + cat);
        }
    });', 'inline');
    return $form;
}

希望这会对你有所帮助。