【问题标题】:posting serialized data with jquery ajax in IE6 not working在 IE6 中使用 jquery ajax 发布序列化数据不起作用
【发布时间】:2013-05-22 08:29:35
【问题描述】:

当我在 ie6 和 i 中使用 jquery ajax 命令发布一些数据时

print_r($_POST)

php 打印一个空数组..

我可以通过添加这行代码在ie中使用alert功能来提醒这些数据:

警报(form_data)

如何将提交的数据发布到 php?我不知道 ie6 的问题出在哪里? 这是我发布数据的代码

$('#submit').live('click', function(e) {
        e.preventDefault();
        var post = $(this).attr("name") + "=submit";
        var form_data = $('#create_album_form').serialize() + "&" + post;
        $.ajax({
            type: "POST",
            url: "create_album.php",
            data: form_data
        }).done(function( data ) {
            $('#album_data').html('');
            $('#album_data').html(data);
            $('#album_data').delay(1000).trigger('reveal:close');
            if(data == '<div class="success">آلبوم شما با موفقیت ساخته شد</div>'){
                $('#myalbums').load('update_albums.php').fadeIn('500');
            }

        });


    });

【问题讨论】:

  • 我相信你应该先data: { v : form_data } 然后parse_str($_POST['v'], $v); var_dump($v)
  • 微软强烈建议不要再使用 IE6。错误是什么?您可以添加 HTTP 嗅探以查看问题所在吗?您还可以告诉我们您使用的是哪个 jQuery 版本吗?Live 已被 .on 弃用,但 jQuery 2 与 IE 不兼容
  • jquery 版本是 1.9.1,我只是优化我的代码以在所有浏览器中可用
  • .live 不再在 1.9.1 中 - 按照我的建议使用 .on
  • 你能在ajax部分之前做console.log(post)console.dir(post)吗?

标签: php javascript jquery post


【解决方案1】:

.live() 在 jquery 1.9.x 中被删除,改用.on()

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-08-11
    • 2011-07-16
    • 2011-10-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多