CI + JQuery + Ajax проблема - PullRequest
       7

CI + JQuery + Ajax проблема

0 голосов
/ 31 марта 2010

Вызов ajax с именем URL работает хорошо без ajax, например. http://localhost/ci/controller/method/param_value. Но использование ajax не работает. Ниже приведен сегмент кода, я только начал с JQuery + Ajax с CI.

Вот мой контроллер:

<?php

класс BaseController расширяет контроллер {

public function BaseController(){
    parent::Controller();
    $this->load->helper('url');
}
function index(){
    $this->load->view('header');
    $this->load->view('body');
    $this->load->view('footer');
}
function ajaxTest($testData=""){
    //$this->load->view('ajaxtest',array('test_data'=>$testData));
    echo 'Got It';
}

} ?>

Вот вид

<?php

echo $ test_data; ?>

Функция вызова Ajax

function testAjaxCall(){

$.post(
    base_url+'basecontroller/ajaxtest/test-value',
    function(responseData) {
        $("#test-div").html(responseData);
    }
);

}

Страница вызова Ajax (кнопка)

<div id="test-div"></div><input type="button" onclick="testAjaxCall()" name="ajax-test" value="Test Ajax" />

JS base_url объявление

    <script type="text/javascript" src="<?php echo base_url();?>js/jquery.js"></script>
<script type="text/javascript" src="<?php echo base_url();?>js/application-ajax-call.js"></script>

<script type="text/javascript">
/* to make ajax call easy */
base_url = '<?php echo base_url();?>';
</script>

Oh! Интересно, что он работает на IE8, но не FF. Я не понимаю.

1 Ответ

0 голосов
/ 31 марта 2010

правильно ли вы определили base_url в вашем JS?

попробуйте изменить это

base_url+'basecontroller/ajaxtest/test-value',

до

'<?=base_url()?>basecontroller/ajaxtest/test-value',

EDIT: Также я настоятельно рекомендую вам установить Firebug (Firefox addon), чтобы вы могли отлаживать ваши Ajax Posts.

EDIT2: CI не позволяет передавать параметры через запросы GET. попробуйте изменить $ .get (на $ .post (

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