如果数据库中存在数据,则应显示“编辑”按钮,否则应在ajax成功功能中显示“添加”按钮,而不显示页面重新加载

问题描述 投票:0回答:1

如果数据库中存在数据,则应显示“编辑”按钮,否则应显示“添加”按钮,而不在ajax成功功能中显示页面重新加载。

在我的表单中,第一个面板工作正常,代码与我在第二个面板中执行的代码相同,但它不起作用。

形式

<form action="" id="data_form" method="post" > 
    <div class="dashboard-column-main"> 
    <div class="dashboard-container"> 
    <div class="title-section"> 
    <h3 class="section_title">Company Information</h3> 
    </div> 

    <div class="profile-back"> 
    <div class="panel-group" id="accordion"> 

    <!--First pannel ends--> 
    <div class="panel panel-default"> 

    <div class="panel-heading row" id="first"> 
    <div class="col-md-4 col-sm-4 col-xs-4">Company Name</div> 
    <div class="col-md-4 col-sm-4 col-xs-4 ellipsis" id="cname"><?php 
    if (isset($s_company_name)) { 
    echo $s_company_name; 
    } 
    ?> 
    </div> 

    <a data-toggle="collapse" data-parent="#accordion" href="#collapseOne"> 
    <div class="profile-edit col-sm-4 col-xs-4 col-md-4 aj-text"> 
    <?php if (empty($s_company_name[0]) || empty($s_company_name)): ?> 
    Add 
    <?php else: ?> 
    <i class="fa fa-pencil"></i> Edit 
    <?php endif; ?> 
    </div> 
    </a> 
    </div> 


    <div id="collapseOne" class="panel-collapse collapse"> 
    <div class="panel-body"> 
    <div class="row"> 
    <div class="col-md-7 col-lg-offset-2 text-center"> 
    <label class="col-md-4">Company Name</label> 
    <div class="col-md-8"> 
    <input type="text" name="company_name" id="company_name" class="form-control" 
    value="<?= (isset($s_company_name)) ? $s_company_name : null; ?>"/><br> 
    <input type="hidden" name="save_type" id="save_type" value="<?= (empty($s_company_name[0]) || empty($s_company_name)) ? 'Save' : 'Update'; ?>"> 

    <?php if (empty($s_company_name[0]) || empty($s_company_name)): ?> 
    <button type="submit" class="btn btn-success aj-text-btn" data-target="#collapseOne" data-toggle="collapse">Save</button> 
    <?php else: ?> 
    <button type="submit" class="btn btn-success aj-text-btn" data-target="#collapseOne" data-toggle="collapse">Update</button> 
    <?php endif; ?> 
    <button type="button" data-target="#collapseOne" data-toggle="collapse" class="btn btn-warning cancel-name">Cancel</button> 
    </div> 
    </div> 
    </div> 
    </div> 
    </div> 
    </div> 
    <!--First pannel ends--> 

    <!--second pannel starts--> 
    <div class="panel panel-default"> 
    <div class="panel-heading row"> 
    <div class="col-md-4 col-sm-4 col-xs-4">Company Established Date</div> 
    <div class="col-md-4 col-sm-4 col-xs-4 ellipsis" id="cdate"><?php 
    if (isset($s_company_estd_date)) { 
    echo $s_company_estd_date; 
    } 
    ?> 
    </div> 
    <a data-toggle="collapse" data-parent="#accordion" href="#collapseTwo"> 
    <div class="profile-edit col-sm-4 col-xs-4 col-md-4 aj-textt"> 
    <?php if (empty($s_company_estd_date[0]) || empty($s_company_estd_date)): ?> 
    Add 
    <?php else: ?> 
    <i class="fa fa-pencil"></i> Edit 
    <?php endif; ?> 
    </div> 
    </a> 

    </div> 
    <div id="collapseTwo" class="panel-collapse collapse"> 
    <div class="panel-body"> 
    <div class="row"> 
    <div class="col-md-7 col-lg-offset-2 text-center"> 
    <label class="col-md-4">Company Established Date</label> 
    <div class="col-md-8"> 
    <input name="company_estd_date" id="company_estd_date" type ="text" class="form-control" value="<?= (isset($s_company_estd_date)) ? $s_company_estd_date : null; ?>"/><br> 
    <input type="hidden" name="save_typee" id="save_typee" value="<?= (empty($s_company_estd_date[0]) || empty($s_company_estd_date)) ? 'Save' : 'Update'; ?>"> 
    <?php if (empty($s_company_estd_date[0]) || empty($s_company_estd_date)): ?> 
    <button type="submit" class="btn btn-success aj-text-btnn" data-target="#collapseTwo" data-toggle="collapse">Save</button> 
    <?php else: ?> 
    <button type="submit" class="btn btn-success aj-text-btnn" data-target="#collapseTwo" data-toggle="collapse">Update</button> 
    <?php endif; ?> 
    <button type="button" data-target="#collapseTwo" data-toggle="collapse" class="btn btn-warning cancel-name">Cancel</button> 
    </div> 
    </div> 
    </div> 
    </div> 
    </div> 
    </div> 
<!--second pannel ends--> 

</div> 
</div> 
</div> 
</div> 
</form> 


<script> 
$(document).ready(function () { 

$('#data_form').on('submit', function (e) { 
e.preventDefault(); 
var form_data = $(this).serialize(); 
$.ajax({ 
type: "POST", 
url: '<?php echo base_url(); ?>index.php/Profile_cntrl/supplier_company_insert_update', 
data: form_data, 
dataType: 'json', 
success: function (result) 
{ 
$(".aj-text").html(result.replace_text); 
$(".aj-text-btn").html(result.btn_text); 
$("#save_type").val(result.save_type); 

$('#cname').text($("#company_name").val()); 





$(".aj-textt").html(result.replace_textt); 
$(".aj-text-btnn").html(result.btn_textt); 
$("#save_typee").val(result.save_typee); 
$('#cdate').text($("#company_estd_date").val()); 

}, 
error: function () 
{ 
alert('failed'); 
} 
}); 
}); 
}); 
</script>

控制器代码

public function supplier_company_insert_update() { 

$this->db->select('*'); 
$this->db->from('supplier_otherdetails'); 
$this->db->where('supplierid_fk', $this->session->id); 
$query = $this->db->get(); 
$save_type = $this->input->post('save_type'); 
$save_typee = $this->input->post('save_typee'); 
$company_name = $this->input->post('company_name'); 
$cdate = $this->input->post('company_estd_date'); 

if ($query->num_rows() > 0) { 
$this->Profile_model->update_supplier_company(); 
//redirect('welcome/suppliercompany'); 
} else { 
$this->Profile_model->insert_supplier_company(); 
//redirect('welcome/suppliercompany'); 
} 

if (trim($company_name) != '') 
echo json_encode(array('replace_text' => 'Edit', 'btn_text' => 'Update', 'save_type' => $save_type)); 
else 
echo json_encode(array('replace_text' => 'Add', 'btn_text' => 'Save', 'save_type' => $save_type)); 

if (trim($cdate) != '') 
echo json_encode(array('replace_textt' => 'Edit', 'btn_textt' => 'Update', 'save_typee' =>  $save_typee)); 
else 
echo json_encode(array('replace_textt' => 'Add', 'btn_textt' => 'Save', 'save_typee' =>  $save_typee)); 
} 
php jquery json ajax codeigniter
1个回答
0
投票

控制器中修改代码

 public function supplier_company_insert_update() {

        $this->db->select('*');
        $this->db->from('supplier_otherdetails');
        $this->db->where('supplierid_fk', $this->session->id);
        $query = $this->db->get();
        $save_type = $this->input->post('save_type');
        $company_name = $this->input->post('company_name');

        $save_typee = $this->input->post('save_typee');
        $cdate = $this->input->post('company_estd_date');

 if ($query->num_rows() > 0) {
            $this->Profile_model->update_supplier_company();
            //redirect('welcome/suppliercompany'); 
        } else {
            $this->Profile_model->insert_supplier_company();
            //redirect('welcome/suppliercompany'); 
        }

        if (trim($company_name) != '')
            $return_name = array('replace_text' => 'Edit', 'btn_text' => 'Update', 'save_type' => $save_type);
        else
            $return_name = array('replace_text' => 'Add', 'btn_text' => 'Save', 'save_type' => $save_type);


        if (trim($cdate) != '')
            $return_cdate = array('replace_textt' => 'Edit', 'btn_textt' => 'Update', 'save_typee' => $save_typee);
        else
            $return_cdate = array('replace_textt' => 'Add', 'btn_textt' => 'Save', 'save_typee' => $save_typee);
        echo json_encode(array_merge($return_name, $return_cdate));
}
© www.soinside.com 2019 - 2024. All rights reserved.