完整的页面详细介绍ajax成功功能的结果-编码器


full page details coming on ajax success function result- codeigniter

我正在研究ajax在codeigniter上的实际工作原理。而且,我面临的问题是:在ajax .php中,有一个div即"ShowMember",我想从下拉菜单中选择"成员id"后显示成员详细信息。数据不是来的好,但来的是完整的'ajax .php页面'在'ShowMember'div从下拉菜单中选择值后。请帮助。我刚开始使用codeigniter。谢谢。

ajaxex.php(视图)

<div>
  <select class='form-control EmployeeIDs' name='EmployeeID' id='EmployeeIdenity'>
                <option value="">Select Employee</option>
                <?
                foreach($results as $row) 
                {
                $MemberID=$row->MemberID;
                $EmployeeID=$row->EmployeeID;
                ?>
                <option value="<?echo $MemberID;?>"><?echo $EmployeeID;?></option>
                <?}?>
            </select>
</div>
<div class='ShowMember'></div>

mystyle.js

$('#EmployeeIdenity').change(function(){
    var MemberID = $('#EmployeeIdenity').val();
    $.ajax({
        url:"welcome/ajaxFindMemberDetails",
        type:"GET",
        data:{MemberID:MemberID},
        success:function(result){
            $('.ShowMember').html(result);
    }});
});
h2控制器

class Welcome extends CI_Controller
{
    public function __construct()
        {
                parent::__construct();
                $this->load->model('news_model');
        $this->load->library('session'); // Start Session
        $this->load->helper('form');
        $this->load->library('form_validation');
        }
       public function ajaxFindMemberDetails()
       {
        $data1['MemberDetailsResult'] = $this->news_model->memberDetails($MemberID);
        $this->load->view('admin/ajaxMemberDetailsPage',$data1);
       }
}

ajaxMemberDetailsPage.php(视图)

<?
foreach($MemberDetailsResult as $rowMemDetails) 
{
    echo $MemID=$rowMemDetails->MemberID;
?>
<?}?>

class News_model extends CI_Model 
{
        public function __construct()
        {
                $this->load->database();
        }
        public function memberDetails($MemberID)
       {
            $this->db->where('MemberID', $MemberID);
            $query = $this->db->get('member');
            $MemberDetailsResult = $query->result();
            return $MemberDetailsResult;
        }
}

你得到MemberID在你的控制器

public function ajaxFindMemberDetails()
       {
        $MemberID=$this->input->get('MemberID');// get MemberID
        $data1['MemberDetailsResult'] = $this->news_model->memberDetails($MemberID);
        $this->load->view('admin/ajaxMemberDetailsPage',$data1);
       }

和视图中的php标签ajaxMemberDetailsPage.php

<?php
foreach ($MemberDetailsResult as $rowMemDetails) {
    echo $MemID = $rowMemDetails->MemberID;
}?>

实际上,Ajax代码无法找到正确的路径。所以,我试了一下,它起作用了。所以,我想分享我的变化。它可能会对某人有所帮助。@Saty, @Arnas, @Indrasinh,谢谢你们发现我的错误。这意义重大。

header。php

I have to set Baseurl here in head section of header.
<script>
  var BASEURL = 'http://localhost/Project/index.php/';
</script>

AjaxEx.php

没有变化。

控制器

public function ajaxFindMemberDetails()
    {
        $MemberID= ($this->input->get('MemberID') != '' ? $this->input->get('MemberID') : 0);
        $data1['MemberDetailsResult'] = $this->news_model->memberDetails($MemberID);
        $this->load->view('admin/ajaxMemberDetailsPage',$data1);
    }

No Changes, As the question.

AjaxCode.js

$('#EmployeeIdenity').change(function(){
    var MemberID = $("#EmployeeIdenity option:selected").val();
    $.ajax({
        url:BASEURL+"welcome/ajaxFindMemberDetails",
        type:"GET",
        data:{'MemberID':MemberID,'MemType':'Hello'},
        success:function(result){
            $('.ShowMember').html(result);  
    }});
});