2016-11-04 2 views
0

Здесь я пытаюсь получить данные из базы данных до textbox через AJAX. Я успешно retrived данные из базы данных через AJAX, но я нахожу, что трудности, чтобы поместить эти значения в требуемых textboxКак поместить значения в текстовое поле, которое извлекается из базы данных с помощью AJAX в CodeIgniter?

Посмотреть части:

<div class="form-group"> 
    <label class="col-sm-4 control-label">Types</label> 
    <div class="col-sm-5"> 
     <select class="form-control" id="ctype" name="ctype" onchange="displaydata(this.value)" required> 
      <option value=""> -- Select -- </option> 
      <option value="A">A</option> 
      <option value="B">B</option> 

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

Текстовые поля, где мне нужно, чтобы отобразить (я не называю этот HTML часть через AJAX)

<tr> 
    <td>Full Day </td> 
    <td><input class="form-control" type="text" id="ch1" name="ch1"></td> 
</tr> 
<tr> 
    <td>Excess</td> 
    <td><input class="form-control" type="text" id="ch2" name="ch2" ></td> 
</tr> 

АЯКС часть:

function displaydata() { 
var codata=$("#ctype").val(); 
$.post("<?php echo $this->config->item("index_url")."VM/CDetails";?>",{'cdata':cdata},function(data, status){ 
    $("#cdetails").html(data);  
}); 
} 

Контроллер часть:

public function CDetails(){ 
    $cdata = $_POST["cdata"]; 
    $this->load->database(); 
    $this->load->model('general_model','gm'); 

    $where=array('type_of_vehicle'=>$cdata); 
    $params = array ('table_name'=>'details_local','select_fields'=>'serial_num,type,fulls,excess','where_clause'=>$where); 
    $this->gm->initialize($params); 
    $result = $this->gm->selectEntryByLogic(); 

    print_r($result); 
} 

можно увидеть значения feched, давая print_r($result), как показано выше. Как установить значения в два отдельных textbox, как я упоминал в своем коде?

print_r($result) VALUE

Array ([0] => Array ([serial_num] => 1 [type] => A [fulls] => 36 [excess] => 600 )) 
+0

показать ваш результат 'print_r ($ result)' –

+0

Я хочу воспроизвести 36 и 600 в двух заданных 'текстовых поле '. 'textbox' ID - это' ch1' и 'ch2' – Kirataka

ответ

0

echo json_encode($result); после $result = $this->gm->selectEntryByLogic(); в вашем CDetails() fucntion.

Как сильфон:

public function CDetails(){ 
    $cdata = $_POST["cdata"]; 
    $this->load->database(); 
    $this->load->model('general_model','gm'); 

    $where=array('type_of_vehicle'=>$cdata); 
    $params = array ('table_name'=>'details_local','select_fields'=>'serial_num,type,fulls,excess','where_clause'=>$where); 
    $this->gm->initialize($params); 
    $result = $this->gm->selectEntryByLogic(); 

    echo json_encode($result); 
} 

добавить сильфон кода в AJAX displaydata()

$("#ch1").val(data[0]['fulls']); 
$("#ch2").val(data[0]['excess']); 

как сильфон и изменить ваш JQuery имя переменной вар codata=$("#ctype").val(); в var cdata=$("#ctype").val();:

function displaydata() { 
    var cdata=$("#ctype").val(); 
    $.post("<?php echo $this->config->item("index_url")."VM/CDetails";?>",{'cdata':cdata},function(data, status){ 
     $("#ch1").val(data[0]['fulls']); 
     $("#ch2").val(data[0]['excess']);  
    }); 
} 

Или заменить вы AJAX запросили систему, например, ниже:

var cdata=$("#ctype").val(); 
$.ajax({ 
    context: this, 
    url: <?php echo $this->config->item("index_url")."VM/CDetails";?>, 
    type: 'POST', 
    dataType: 'json', 
    data: {cdata:cdata} 
}).done(function (response) { 
    $("#ch1").val(response[0]['fulls']); 
    $("#ch2").val(response[0]['excess']); 
}).fail(function (data) { 
     console.log('failed'); 
}); 
+0

Nop .. Не подходит – Kirataka

+0

wait .. i update –

+0

изменить имя переменной jquery' var codata = $ ("# ctype"). val(); 'to' var cdata = $ ("# ctype"). val(); ' –

Смежные вопросы