[英]Submitting the Form through AJAX and PHP
场景:
单击提交按钮时,将显示具有以下消息的警报框:
提交表格后,您将无法进行任何更改。 您要提交吗?
当用户按“ 确定 ”时,将显示以下消息:
提交
这是我的尝试:
这是表格的一部分:
注意 : 我不会显示要提交的表单的全部数据,因为它会占用空间。我仅显示表单提交按钮的主要部分。
<div id="container">
<form action="<?php echo site_url('main/save_appraisal');?>"
method="post" id="appraisalForm" name="appraisalForm">
<?php if($appr_status < '2'){?>
<input type="button" name="submit" id="submitAppraisal"
value="Submit" />
<?php }?>
<form>
</div>
这是我的控制器的一部分 :
public function submitAppraisal(){
$emp_id = $this->input->post('empid');
echo $this->appraisal_model->setAppraisalStatus($emp_id);
echo 'Submitted';
}
这是我的模型的一部分 :
function setAppraisalStatus($employee_id=''){
if($employee_id == ''){
return;
}
$login = $this->session->userdata('username');
$loginid = $this->get_empid_exuname($login);
$sql = "INSERT INTO appraisal_status
(id,employee_id,status,updated_on,updated_by)
VALUES(seq_appraisal_status.nextval,$employee_id,$status,sysdate,'$login')";
$query = $this->db->query ( $sql );
}
这是表格的一部分 :
<script>
<script type="text/javascript">
$(function () {
$( "#submitAppraisal" ).click(function() {
submitAppraisal();
});
});
function submitAppraisal(){
<?php if($this->session->userdata('userid') == $supervisor){?>
var valid = 0;
$( '.suvinput' ).each(function() {
var vals = $(this).val();
$(this).css('border-color','#ccc');
if(vals == ''){
$(this).css('border-color','#f00');
valid++;
}
});
var confirmSubmit = confirm("You won't be able to make any
changes after submitting the form. Do you want to submit? ");
if(confirmSubmit == false){
return;
}
var params = $('form#appraisalForm').serialize()+ '&submit=Save';
console.log(params);
$.ajax({
url: '<?php echo site_url('main/submitAppraisal');?>',
type: 'post',
data: params,
success: function(data) {
},
error: function(err) {
}
});
}
</script>
这是我的名为appraisal_status的数据库表:
ID | Employee_ID | Status
电流输出:
当用户按下“ 提交”按钮时,将询问以下问题:
You won't be able to make any changes after submitting the form. Do
you want to submit?
当用户按“ 是”时 ,应提交表单并将记录插入数据库中,但既不提交表单也不显示消息。
预期产量:
用户按下Submit按钮后,将显示以下消息,这很好。
提交表格后,您将无法进行任何更改。 您要提交吗?
当用户按下“确定”按钮时,将显示以下消息:
Submitted
我无法弄清楚哪里出了问题?
应该做哪些更正? 建议非常赞赏。
Ajax的全部目的是将响应传递给JavaScript,而不是简单地显示它。
这是您的成功功能:
success: function(data) {
},
它接受对变量data
的响应,然后对其不执行任何操作。
您将忽略PHP程序的输出。
如果要显示输出,则需要编写代码以显示它。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.