2016-11-04 52 views
0

這裏我試圖通過AJAX從數據庫中取數據到textbox。我通過AJAX成功retrived從數據庫中的數據,但我發現困難把這些值轉換成所需textbox如何將值放入使用CodeIgniter中的AJAX從數據庫中提取的文本框中?

查看部分:在這裏我需要顯示

<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> 

AJAX部分:

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); 
} 

我可以看到通過如上所示得到print_r($result) feched的值。如我在我的代碼中提到的那樣,如何將這些值分別放入兩個單獨的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 is'ch1'&'ch2' – Kirataka

回答

0

echo json_encode($result);$result = $this->gm->selectEntryByLogic();後您的CDetails()溫控功能。

像波紋管:

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變量名VAR 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 .. Not coming – Kirataka

+0

wait ..我更新 –

+0

改變你的jquery變量名'var codata = $(「#ctype」)。val();'to'var cdata = $(「#ctype」)。val();' –

相關問題