PHP에서 javascript로 변수를 보내는 데 문제가 있습니다.Codeigniter가 php var를 javascript로 보내는데 문제가 있습니다.
자바 스크립트 (Ajax) 여물을이 링크로 가져옵니다. 에서
<script src="<?php echo base_url().'assets/js/main.js' ?>"></script>
내 main.js
:
var base_url = '<?php echo base_url(); ?>';
var language = '<?php echo $language; ?>';
임 아약스 .load
이 방법을 사용하여 동적으로 새로 고침 웹 페이지없이 내용을로드하려고 :
var addressValue = $(this).children('a').attr("href");
$('#conteudo').fadeOut("slow").load(addressValue+'/index.php?idioma='+language+' #conteudo').hide().fadeIn("slow")
나는 addressValue
설 포닐 완벽하게로드 할 수 있습니다 . 그러나 위의 방법을 시도하면 내 언어가 울리지 않습니다. language
대신 변수없이 원하는 언어를 넣으십시오. 예 : 포르투갈어는 매력처럼 작동합니다. 저는 다국어로 작업하므로 사용자가 선택한 언어로 콘텐츠를 가져와야합니다.
이것은 사용자가 언어를 컨트롤러에서
<ul class="nav pull-right language" id="barra_de_idiomas">
<li><?php echo anchor(($this->uri->uri_string())."?idioma=english",' ', 'class="language" id="en"') ?></li>
<li><?php echo anchor(($this->uri->uri_string())."?idioma=portuguese",' ', 'class="language" id="pt"') ?></li>
<li><?php echo anchor(($this->uri->uri_string())."?idioma=german",' ', 'class="language" id="de"') ?></li>
<li><?php echo anchor(($this->uri->uri_string())."?idioma=french",' ', 'class="language" id="fr"') ?></li>
</ul>
그리고 내 구조를 설정하는 방법이다 : 그래서
$this->load->library('user_agent');
if ($this->config->item('language') == '') {
if($this->input->get('idioma') == true) {
$this->config->set_item('language', $this->input->get('idioma'));
} elseif ($this->agent->accept_lang('en')) {
$this->config->set_item('language', 'english');
} elseif ($this->agent->accept_lang('de')) {
$this->config->set_item('language', 'german');
} elseif ($this->agent->accept_lang('pt')) {
$this->config->set_item('language', 'portuguese');
} else {
$this->config->set_item('language', 'portuguese');
}
}
$language = $this->config->item('language');
$data['language'] = $language;
$this->load->vars($data);
크고 빠른 답변을 해주셔서 감사합니다! : D – JonnyDevv
당신을 도울 수있어서 기쁩니다! – manix