0

如何使用 JSON 发送多个这样的值?

foreach($_POST['listItem'] as $key => $values){

    list($eventDate, $eventTitle) = $values;

}

目前,这些值按如下方式发送。但这似乎不能正常工作,因为它只发送了一些字符串。我也无法弄清楚在哪里/如何发送 caltitle 值。

这让我发疯。任何帮助都会很棒。

var txt = $("#listbox");

            var caltitle = copiedEventObject.title

            var dtstart = $.fullCalendar.formatDate(copiedEventObject.start, 'yyyyMMdd');

            var txt = $('#listbox');     
            txt.append("<li class ='listItem'> " + dtstart + "</li>")

            // remove the element from the "Draggable Events" list
            $(this).remove();           

        }
    });


        $('#calendarform').submit(function(e) {
            var form = $(this);
            var listItems = $('.listItem'); 
            listItems.each(function(index){   //For each event do this:
                var listItem = $(this);
                    $("<input type='hidden'/>").val(listItem.text()).appendTo(form).attr('name', 'listItem[' + index + ']');
                });

            //Get text information from elements

        });

编辑:

(使用 JSON)

  $('#calendarform').submit(function(e) {
            var form = $(this);

            var going_to_be_json = [];
            list.each(function(i, item) {
              going_to_be_json.push({
                 'id':'test',
                 'title': 'test'
              });
            });

            $('#stuff').val( JSON.stringify(going_to_be_json) );

     });
4

2 回答 2

0

使用 jQuery Post 或 Get 方法发送它并通过 php 获取它您可以使用$.post$.get发送多个值

于 2012-05-11T12:52:46.507 回答
0

将数据准备为对象数组,然后使用 JSON.stringify() 将该数组转换为 JSON,并将隐藏的表单值设置为所述字符串(或使用 XHR 将其提交到服务器)。

以下是如何准备数据的一个非常有限的示例:

var going_to_be_json = [];
list.each(function(i, item) {
  going_to_be_json.push({
     'id':item.id,
     'title': item.title,
     'date': (new Date()).now()
  });
});
hidden_form_element.val( JSON.stringify(going_to_be_json) );

并在服务器上

<?php
$json_data_string = $_POST['hidden_form_field_containing_json_data']; // sanitize however
$array_data = json_decode($json_data_string);

可以从json.orgTag Wiki获得更多关于 JSON(Javascript Object Notation)的信息(尽管 tag wiki 只是向您展示了更多示例和链接)

看来你需要更多的方向。我希望你不会只是复制和粘贴我所拥有的,你会阅读并尝试理解它在做什么......

   $('#calendarform').submit(function(e) {
        var form = $(this),
            listItems = $('.listItem'),
            data = [],
            hidden = $('<input />'); // create a hidden field for the form.
                                    // or just select the hidden form element from the page
        hidden[0].type = 'hidden'; // set the type
        hidden[0].name = 'some_name_for_php_to_recognize'; // and name

        listItems.each(function(i,el){ 
             data.push({'index': i, 'text': $(el).text()});
        });

        hidden.val(JSON.stringify(data));
        $(this).append(hidden); // not needed if the hidden element is already in the DOM

    });
于 2012-05-11T14:01:30.030 回答