簡體   English   中英

使用jQuery Ajax將數據發布到JSON數組中?

[英]POST data into JSON array with jquery ajax?

我什至不知道我的Ajax中的錯誤代碼在哪里,我從互聯網上學習,但仍然無法發布數據。 我的html代碼:

<h3>Input new data</h3>
<form name="contact">
    <input type="text" placeholder="id berita" id="idberita" />
    <input type="text" placeholder="title berita" id="titleberita" />
    <input type="text" placeholder="content berita" id="contentberita" />
    <input id="create_at" type="datetime-local">
    <button type="submit" id="add-data">add</button>
</form>

這是我的ajax代碼:

$('#add-data').on('click', function() {
    var order = {
        id        : $idberita.val(),
        title     : $titleberita.val(),
        content   : $contentberita.val(),
        create_at : $create_at.val()
    };
    $.ajax({
        type   : 'POST',
        url    : 'json/student.json',
        data   : order,
        success: function(newContent) {
            $orders.append('<li>dataid: '+newData.id+', title:'+newData.title+', content:'+newData.content+', create_at: '+newData.create_at+'</li>');
        },
        error: function() {
            alert('error saving data');
        }
    });
});

默認情況下,提交表單會刷新頁面。 jQuery的事件對象始終作為事件處理程序的第一個參數傳遞,因此請使用它來防止此行為:

       $('#add-data').on('click', function(event) {
             event.preventDefault();

              var order = {
                id: $('#idberita').val(),
                title: $('#titleberita').val(),
                content: $('#contentberita').val(),
                create_at: $('#create_at').val(),
            };


            $.ajax({
                type: 'POST',
                url: 'json/student.json',
                data: order,
                success: function(newContent) {     
                    $orders.append('<li>dataid: '+newContent.id+', title:'+newContent.title+', content:'+newData.content+', create_at: '+newData.create_at+'</li>');
                },
                error: function(){
                    alert('error saving data');
                }
            });

        });

使用.serialize()它將把表單中的所有數據輸入元素收集到一組數組中,您不需要一個個地定義

$.ajax({
  type: "POST",
  data: $("#formid").serialize(),
  url : "your/post/url",
  success: function(callback){
     // success handler
  },
  error: function(){
    // error handler
  }
})

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM