jQuery Ajax POST表单没有发布

时间:2015-11-02 18:22:38

标签: javascript jquery ajax forms

我不知道为什么我的表单没有发布,只是重新加载页面。

我可以使用$.ajax({type:GET})执行此操作。但是,由于我的所有脚本都将数据发布到数据库,因此我觉得这样做并不合适。

我还尝试将$('#status-form').serialize()'status=' + status_value添加到$.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;
});

形式:

<form method="post" id="status-form">
<select name="status" id="status">
    <option value="1">1</option>
    <option value="2">2</option>
    <option value="3">3</option>
    <option value="4">4</option>
    <option value="5">Closed</option>
</select>
<button class="bttt">Hello</button>
</form>

编辑:

我修正了拼写错误。还是有同样的问题

SOLUTION:

我找到了解决方案,为什么浏览器会刷新并且什么也不做。因为我使用firefox和firefox将表单中的任何按钮作为提交按钮。当我点击按钮时,它用于POST表单,然后到达$ .ajax({success:})。我必须做的是给按钮type="button"

2 个答案:

答案 0 :(得分:1)

类型必须表示为字符串。因此,它是type: 'POST'

答案 1 :(得分:1)

只是表单提交,下面的代码应该可以正常工作

override func viewDidLoad() { NSTimer.scheduledTimerWithTimeInterval(1.0, target: self, selector: "reloadTableView", userInfo: nil, repeats: true) }