2011-04-19 92 views
1

我想将一个js变量传递给drupal php变量并显示其值。 以下是我的代码。如何将js变量传递给drupal php变量?

$form['title'] = array(
    '#type' => 'select', 
    '#title' => t('titles'), 
    '#page callback' => 'drupal_get_form', 
    '#page arguments' => array('test_select'), 
    '#access callback' => TRUE, 
    '#options' => $options, 
    '#prefix' => '<div>', 
    '#postfix' => '</div>', 
    '#attributes' => array('onchange' => 'test_change') 
); 

$form['titletext'] = array(
    '#type' => 'textfield', 
    '#title' => 'title', 
); 

drupal_add_js('$('.$form['title']['select'].').change(function() { 
    var str =""; 
    '.$a.' = ""; 
    $("'.$form['title']['select'].' option:selected").each(function() { 
    str += $(this).text() + " "; 
    }); 
}) 
.change();', 'inline', 'header'); 

我想那str变量分配给文本字段的值,还是只分配变量Drupal的PHP变量,显示在页面上。

+0

现在我想从数据库检索日期根据下拉列表中的选择。 – Ahmad 2011-04-19 07:50:33

回答

-1

我我不知道PHP的,但作为文本框的关注,你可以试试这个..

$('#textBoxId').val(str); 
+0

我输入了$('#titletext')。val(str);但它不起作用。 titletext是我的文本字段的ID。你可以在上面的代码中看到它。 – Ahmad 2011-04-19 06:43:07

+0

现在我想根据下拉列表中的选择从数据库检索日期。 – Ahmad 2011-04-19 07:50:11

0

我想传递一个js变量Drupal的PHP变量并显示其价值。 ...

使用DOM操作..喜欢..你要显示的结果的区域做这样的事情

$( “选择”)。变化(函数(){ $(“#thevalue “).html($(this).val()) })

或者在你的情况下..每个输出文本。如果你需要drupal来获得价值..你必须提交到后端..像使用阿贾克斯等

+0

我写了$(“titletext”)。change(function(){$(“#title”)。html($(this).val())})但它不起作用。 titletext是文本字段的标识,标题是下拉框的标识 – Ahmad 2011-04-19 06:46:18