как передать параметры с помощью автоматического перенаправления droplist в codeigniter - PullRequest
0 голосов
/ 17 января 2012

Привет, ребята. Я пытаюсь создать раскрывающийся список стран, и когда пользователь выбирает страну, которая перенаправляет на определенную страницу, создаваемую динамически, мне удается заставить перенаправление работать с использованием JavaScript, но мне нужно больше параметров, чтобыметод внутри контроллера, такой как «id» округа, без раскрытия его на uri, так что это возможно при использовании $ _post, также я не должен использовать кнопку submit.это мой код

просмотр страницы

<?php echo form_open('site/country');                 
  $options = array();
  $js = 'id="country" onChange="window.location.href= this.form.CTRY.options[this.form.CTRY.selectedIndex].value"';
  $options['#']  = "(please select a country)" ; 
  foreach ($list as $row):     
      $value= site_url()."/site/country/".url_title($row->name);
  $options[$value]  = $row->name ;   
  endforeach; 
  echo form_dropdown('CTRY', $options,'',$js);    
  //$test =array ('number' => 10)     
  //echo form_hidden($test);
  echo form_close();?>

это мой метод в контроллере

function country($data)
   {
echo 'this is taking you to county= '.$data;

}

1 Ответ

0 голосов
/ 17 января 2012

Почему бы вам не сделать что-то подобное описанному @Joseph Silber.

Использовать jQuery для выполнения ajax-запроса при изменении раскрывающегося списка, а также для управления перенаправлением?

Что-то вроде;

$('#my-drop-down').change(function() {
        $.ajax({
        url: '/site/country',
        type: 'post',
        data: $("#my-form").serialize(),
        success: function( response.redirect ) {
            window.location.href = response.redirect;
        },
        error: function( response ) {
            alert('Oops');
        }
    });
});

Используя serilaize (), вы можете опубликовать все данные из формы или просто добавить параметры, которые хотите передать.

Eg data: 'id='+$('#id').val()+'&country='+$('#country').val()

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...