Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/drupal/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Drupal6中的ajax函数不起作用_Ajax_Drupal - Fatal编程技术网

Drupal6中的ajax函数不起作用

Drupal6中的ajax函数不起作用,ajax,drupal,Ajax,Drupal,我需要使用ajax函数根据region字段的值过滤territory字段,就像下面代码中提到的那样,但它不起作用。对函数的AJAX调用没有进入函数“territory\u filter\u callback”,无论如何,您知道错误在哪里吗 function form_search_menu() { $items['form/search'] = array( 'title' => t('Search'),

我需要使用ajax函数根据region字段的值过滤territory字段,就像下面代码中提到的那样,但它不起作用。对函数的AJAX调用没有进入函数“territory\u filter\u callback”,无论如何,您知道错误在哪里吗

            function form_search_menu() {

             $items['form/search'] = array(
             'title' => t('Search'),
             'page callback' => 'drupal_get_form',
             'page arguments' => array('_search'),
             'access callback' => TRUE,
             'description' => t('search'),
               );
            return $items;
              }

         function _search(&$form_state) {
         drupal_add_js(drupal_get_path('module', 'form_search')    .'/script.js');
           $form['description'] = array(
           '#type' => 'item',
           '#title' => t('Search page'),
                );



       //FILL THE LIST OF REGIONS
         $conn = oci_connect('webuser', 'website',    '172.16.1.1');

        //regions
      $stid = oci_parse($conn, "SELECt  code,descr1 FROM    table1.region");
   oci_execute($stid);
    $cidades = array();         while (($row = oci_fetch_array($stid,    OCI_ASSOC))) {
            $cidades[$row['CODE']]= $row['DESCR1'];
                                }       $cidades ['']='Select';

        //city
        $stid1 = oci_parse($conn, "SELECT code,descr1 from    table1.city ORDER BY      DESCR1");   oci_execute($stid1);    $types =    array();        while (($row = oci_fetch_array($stid1, OCI_ASSOC))) {
            $types [$row['CODE']]= $row['DESCR1'];
                                }           $types['']='Select';
  //territory
   $stid2 = oci_parse($conn, "SELECT code,descr1 FROM    table1.territory");      oci_execute($stid2);
    $territory = array();
      while (($row = oci_fetch_array($stid2, OCI_ASSOC))) {
             $territory [$row['CODE']]= $row['DESCR1'];
                                }
         $territory ['']='Select';


   oci_free_statement($stid);
   oci_close($conn);


$form['name'] = array(
  '#type' => 'fieldset',
  //'#title' => t('Name'),
  // Make the fieldset collapsible.
  '#collapsible' => false, // Added
  '#collapsed' => FALSE,  // Added
  ); 

  $form['name']['Region'] = array(
 '#type' => 'select',
 '#title' => t('Region'),
 '#options' => $cidades,  
 '#required' => FALSE,    '#default_value' =>    isset($form_state['values']['name']['Region']) ? $form_state     ['values']['name']['Region'] : '',
       '#ajax' => array(
          'event' => 'change',
         'callback' => 'territory_filter_callback', 
          'wrapper' => 'dropdown_second_replace'
     ),
  // Added
     );

 $form['name']['Territory'] = array(
  '#type' => 'select',
   '#title' => t('Territory'),      '#prefix' => '<div    id="dropdown_second_replace">',   '#suffix' => '</div>',  
    '#options' => $territory,
     '#required' => FALSE,  '#default_value' =>    isset($form_state['values']['name']['Territory']) ?             $form_state['values']['name']['Territory'] : '',

       // Added    );

    $form['name']['City'] = array(
    '#type' => 'select',
      '#title' => t('City'),
       '#options' => $types,
     '#required' => FALSE,
   // Added
 );

 $form['link'] = array(
 '#type' => 'markup',
 '#value' => '<a href="#" onclick="navigate()" ><input    type="button"  value="Search"         style="background-color:#2A64A9;color:#FFFFFF;width:80px;    height:25px;         border:1;CURSOR:POINTER;float:right;border-color:#FFFFFF;" ></a>', //



  return $form;
 }

   function territory_filter_callback(&$form,&$form_state)
{
$territory_options=array();
   if(isset($form['name']['Region']['#default_value']['0'])
{   $Region=$form['name']['Region']['#default_value']['0'];
}
else
  {     $Region=0;
   }


   $territory_options=selected_territory($Region);
   $form['name']['Region']['#ajax']=
   array('event' => 'change',
    'wrapper' => 'territory_wrapper',
   'callback' => 'filter_territory_callback',
   'method' =>replace,
   );
   $form ['name']['territory']['prefix']='<div    id="territory_wrapper">';
      $form ['name']['territory']['prefix']='</div>';
       $form ['territory']['#options']=$territory_options;

  }

  function filter_territory_callback($form,$form_state)
 {
    $Region=$form['name']['Region']['#value'];
$form['name']['territory']['#options']=selected_territory($Region);
return $form['territory'];
  }

Drupal6不支持“ajax”…“ajax”与Drupal7一起使用…在Drupal6中,您可以使用“ahah”


祝你好运

我真的看不到任何问号。如果你重写你的问题,再加上一点关于你做了什么,特别是不能开始工作的细节,我很乐意取消我的反对票。此外,如果您可以格式化代码,使其更易于阅读,那将是非常棒的。考虑通过代码使用相同的缩进。