如果数据库中存在数据,则应显示“编辑”按钮,否则应显示“添加”按钮,而不在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));
}
控制器中修改代码
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));
}