如果数据库中没有数据则应该是ADD按钮显示,否则应该更改没有页面重新加载按钮的EDIT按钮

时间:2017-07-04 05:18:23

标签: jquery ajax codeigniter

示例启动公司名称为空它应该是ADD按钮,单击ADD按钮后输入一些数据并单击保存现在应该自动更改EDIT按钮而不用重新加载如何调用ajax成功函数请建议我。< / p>

enter image description here

脚本

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

        $('#data_form').on('submit', function (e) {

            var form_data = $(this).serialize();

            $.ajax({
                type: "POST",
                url: '<?php echo base_url(); ?>index.php/Profile_cntrl/supplier_company_insert_update',
                data: form_data,
                success: function (data)
                {
                    $('#ccity').text($("#city").val());                               
                },
                error: function ()
                {
                     alert('failed');
                }
            });

            e.preventDefault();
        });

    });

</script>

形式

下面添加并编辑按钮如何调用ajax sucess

<?php if (empty($s_city[0]) || empty($s_city)) {?>
    <a data-toggle="collapse" data-parent="#accordion" href="#collapse7">
        <div class="profile-edit col-sm-4 col-xs-4 col-md-4">Add</div>
    </a>
<?php } else { ?>
    <a data-toggle="collapse" data-parent="#accordion" href="#collapse7">
        <div class="col-md-4 col-sm-4 col-xs-4 profile-edit"> <i class="fa fa-pencil"></i> Edit</div>
    </a>                                          
<?php } ?>
</div>

1 个答案:

答案 0 :(得分:4)

更改表单,如下所示

<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"> 
                        <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> 
                </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()); 
                }, 
                error: function () 
                { 
                    alert('failed'); 
                } 
            }); 
        }); 
    }); 
</script>

并替换您的控制器supplier_company_insert_update函数,如下所示

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

    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' => 'Save', 'btn_text' => 'Save', 'save_type' => $save_type)); 
}

希望这对你有用。如果有任何帮助,请告诉我们......

相关问题