2013-05-23 5 views
0

У меня есть представление, что с помощью jquery помещается некоторая информация в контроллер. контроллер затем запускает некоторую логику с использованием информации о сообщении и возвращает результат в div в моем представлении.Передача нескольких переменных контроллеру codeigniter из представления с помощью jquery

мой взгляд синтаксис:

$.post("get_link_load_options", { varlatitude: latitude, varlongitude: longitude }).done(function(data) { 
     $('#results').html(result);  
    }); 

Мой синтаксис Контроллер:

function get_link_load_options(){ 
    $this->load->model('Sales_model'); 
    if (isset($_POST['data'])){ 
     $q = strtolower($_POST['data']); 
     $data['result'] = $this->Sales_model->get_link_load_options($q); 
     $this->load->view('sales\link_order_options',$data); 
    } 
} 

В настоящее время, с этим синтаксисом ДИВ заполняется значением переменной широты и дублируется.

Как я могу показать содержимое вида link_order_options, а также как получить доступ к каждой переменной в контроллере, чтобы я мог выполнять с ней логику. в настоящее время $ q извлекает переменную/массив данных.

Как хранить каждую широту и долготу в качестве переменной PHP в контроллере?

Спасибо, что и всегда.

+1

Вы можете использовать CodeIgniter в 'Input Class' для получения почтовых данных. Проверьте ответ ниже. –

+1

Вы не отправляете какие-либо 'данные' на контроллер, только' varlatitude' и 'varlongtitude'. Это означает, что в контроллере вы найдете их, обратившись к '$ _POST ['varlatitude']' и '$ _POST ['varlongtitude']'. –

ответ

2

Вот демонстрация

Контроллер

function get_link_load_options() 
{ 
    if($this->input->is_ajax_request()){ 
     $varlatitude = $this->inpput->post('varlatitude'); 
     $varlongitude = $this->inpput->post('varlongitude'); 

     $data['result'] = $this->Sales_model->get_link_load_options($varlatitude , $varlongitude); 
     $this->load->view('sales\link_order_options',$data); 
    } 
} 

Модель

public function get_link_load_options($latitude , $longitude) 
{ 
    //blah blah 
} 

Ajax

var latitude = $('#latitude_input_field_id').val(); 
var longitude = $('#longitude_input_field_id').val(); 

$.post("get_link_load_options", { varlatitude: latitude, varlongitude: longitude }).done(function(data) { 
    $('#results').html(data);  
}); 

HTML

<input type="text" id="latitude_input_field_id" /> 
<input type="text" id="longitude_input_field_id" /> 

<div id="results"> 

</div> 
1

Вы можете использовать код Input Class Codeigniter для получения данных сообщения.

Это может помочь вам:

if($this->input->post()) { 
    $varlatitude = $this->input->post('varlatitude'); 
    $varlongitude = $this->input->post('varlongitude'); 
} 
Смежные вопросы