Javascript jQuery Ajax发布表单未发布
我不知道为什么我的表单没有发布,而是重新加载页面 我可以用Javascript jQuery Ajax发布表单未发布,javascript,jquery,ajax,forms,Javascript,Jquery,Ajax,Forms,我不知道为什么我的表单没有发布,而是重新加载页面 我可以用$.ajax({type:GET})实现这一点。但是我觉得这样做不对,因为我的脚本都将数据发布到数据库中 我还尝试将$('#status form').serialize()和'status='+status\u值添加到$.ajax({data:})。但是不起作用。只刷新页面,不向数据库提交任何内容 以下是我的jQuery: $(document).on('click', '.edit',function() { var proj
$.ajax({type:GET})
实现这一点。但是我觉得这样做不对,因为我的脚本都将数据发布到数据库中
我还尝试将$('#status form').serialize()
和'status='+status\u值添加到$.ajax({data:})
。但是不起作用。只刷新页面,不向数据库提交任何内容
以下是我的jQuery:
$(document).on('click', '.edit',function() {
var project_id_value=$(this).closest('tr').find('.project_id').text();
$('#popup').show();
$('#popup').load('scripts/form.php');
$(document).on('click',".bttt", function(){
var status_value=$('#status option:selected').val();
var formData = $('#status-form').serialize();
$.ajax({
type:POST,
url:'scripts/change-status.php?project_id=' + project_id_value,
data:formData,
success: function(data){
alert(data)},
});
});
return false;
});
表格:
1.
2.
3.
4.
关闭
你好
编辑:
我已经纠正了打字错误。还有同样的问题吗
解决方案:
我找到了解决这个问题的方法,为什么浏览器使用刷新而不执行任何操作。因为我使用的是firefox,firefox将表单中的任何按钮都作为提交按钮。当我单击按钮时,它被用来在到达$.ajax({success:})之前发布表单。我要做的是给按钮一个type=“button”
类型必须表示为字符串。因此,它是类型:“POST”
只需提交表单,下面的代码就可以了
$(document).on('click',".bttt", function(){
var status_value=$('#status option:selected').val();
var formData = $('#status-form').serialize();
var project_id_value = 123;
$.ajax({
type:'POST',
url:'change-status.php?project_id=' + project_id_value,
data:formData,
success: function(data){
alert(data);
}
});
return false;
});
你的PHP与你的问题无关。请发布呈现的HTML,而不是PHP源代码。您确定控制台中没有显示错误吗?嵌套的click函数是导致此问题难以解决的原因之一。控制台中没有显示错误。我看不到网络活动,因为页面在单击按钮后重新加载。添加错误:函数(xhr,状态,消息){alert(message);}或method:“POST”
用于最新的jquery版本。此外,我在成功时没有收到任何警报
$(document).on('click',".bttt", function(){
var status_value=$('#status option:selected').val();
var formData = $('#status-form').serialize();
var project_id_value = 123;
$.ajax({
type:'POST',
url:'change-status.php?project_id=' + project_id_value,
data:formData,
success: function(data){
alert(data);
}
});
return false;
});