Контроллер Codeigniter не возвращает обратно значение для просмотра через JQuery - PullRequest
0 голосов
/ 25 мая 2011

У меня есть такая структура папок в codeigniter

 +asset
 +css
 +js
   +jquery
     jquery.js
     global.js
+application
+system

Так что я думаю, вы выясните остальную часть структуры.Теперь у меня есть такой вид:

<li>
        <label>Pa&iacute;s</label>
        <div>
            <select name="pais" id="pais">
                <option value="" selected="selected"> -- Selecciona un pa&iacute;s</option>
                <?php foreach($thesex as $pais):?>
                    <option value="<?php echo $pais->pais_id; ?>"><?php echo ascii_to_entities($pais->pais_descrip); ?></option>
                <?php endforeach;?>
            </select>
        </div>
    </li>

    <li id="esta">
        <label>Estado</label>
        <div>
            <select name="estad" id="estad">

            </select>
        </div>
    </li>

, и мой контроллер выглядит следующим образом:

function estado_paisout()
{
    $this->output->set_status_header(200);
    $this->output->set_header('Content-type: application/json');
    $done = $this->input->post('pid');
    $est = $this->Estado_model->estado_paisout($done);
    echo json_encode($est);
}

и мой код jquery:

$("#pais").change(function(){
    var id = $(this).val();
        $("#esta").show();
        $.ajax({
        type: "POST",
        url: base_link+"/am_registr/ciudad/estado_paisout",
        dataType: "json",
        data: {'pid': id},
        success: function(xhr){
            alert(xhr);
            },
        error : function(xhr, status, error){
            alert(xhr.responseText);
            }   
        });     
    return false;
});

Так чтопроблема в том, что это возвращает страницу ошибки 404, в которой говорится, что эта страница не может быть найдена.Когда я пытаюсь повторить простое «Привет» из контроллера, он выдает ту же ошибку.Но когда я пробую полную ссылку "localhost / mysite / index.php / am_registr / ciudad / estado_paisout" в браузере, он говорит мне, что это файл applicationatio / json, поэтому, когда я сохраняю его и пытаюсь открыть его в блокноте,я получил "Привет".

Любая помощь приветствуется ..!

Ответы [ 2 ]

0 голосов
/ 27 мая 2011

Привет, Дэвид Чен,
Я должен сказать вам, что я решил проблему, и я думаю, это просто потому, что в функции jquery я объявляю переменную base_link = "localhost/mysite/index.php", вместо того, чтобы иметь ее вот так: base_link = "http://localhost/mysite/index.php". Так что спасибоза вашу помощь ..!

0 голосов
/ 25 мая 2011

не уверен, я бы проверил ваши настройки / маршруты, чтобы убедиться, что они могут обрабатывать

am_registr / Ciudad / estado_paisout

Я думаю, что по умолчанию будет обрабатываться

  • am_registr as контроллер
  • ciudad as имя действия (метода)
  • estado_paisout как параметр ...

тогда как вы рассматриваете estado_paisout в качестве имени действия.

Я также хотел бы убедиться, что вы работаете с mod_rewrite на localhost

и что файл .htaccess, который воспламенитель кода использует для удаления index.php из URL, работает

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