如何在jsfiddle中使用最新的jQuery来创建工作ajax?

时间:2012-06-24 00:55:18

标签: jquery jsfiddle

我的ajax jsfiddle无法使用最新的jQuery(1.7.2),但1.4.x可以。使用firebug我可以看到响应是正确的,但没有成功。

知道如何让它适用于最新的吗?

function ajaxcall() {
    $.ajax({
        type: 'post',
        url: '/echo/html/',
        dataType: 'html',
        data: {
            // 'html': button + script,
            'html': "test",
        },
        success: function(data) {
            //alert("ajax finished");
            $('#table').html(data);
        },
        dataType: 'text/html'
    });
}

最终工作版本为here

2 个答案:

答案 0 :(得分:2)

编辑:

这是使用/echo/html/和jQuery $.ajax()的工作版本。

$(document).ready(function(){
    var $button = $('#createissue');

    var test = function(){
        $.ajax({
            url: '/echo/html/',
            type: 'post',
            success: show,
            data: {
                delay: 5,
                html: '<table><tr>' +
                    '<th>summary</th><td>This is a summary for an issue</th>'+
                    '<th>reporter</th><td>Christopher Robin</th>'+
                    '<th>assignee</th><td>Jared from Subway</th>'+
                    '<th>securitylevel</th><td>Hands in the air! Everyone is suspect.</th>'+
                    '<th>description</th><td>Something descriptive goes here, I suppose.</th>'+
                    '</tr></table>'
            }
        });
    };

    var show = function(table) {
        console.log(table);       
        $(document.body).append(table);
    };

    $button.click(test);
});

http://jsfiddle.net/userdude/YCecC/1/


我知道我有一个地方,但不幸的是我没有准备好纯HTML版本。

var test = function(){
    $.ajax({
        url: '/echo/json/',
        success: show,
        type: 'post',
        data: {
            delay: 5,
            json: JSON.stringify({
                summary: 'This is a summary for an issue',
                reporter: 'Christopher Robin',
                assignee: 'Jared from Subway',
                securitylevel: 'Hands in the air! Everyone is suspect.',
                description: 'Something descriptive goes here, I suppose.'
            })
        }
    });
};

var show = function(json) {
    var $row,
        $cell,
        rows = {};

    $tbody.empty();

    for (field in json) {
        $row = $tr.clone();

        $cell = $td.clone();
        $cell.text(field);

        $row.append($cell);

        $cell = $td.clone();
        $cell.text(json[field]);

        $row.append($cell);

        rows[field] = $row;
    }

    $tbody.append(
        rows.summary,
        rows.securitylevel,
        rows.reporter,
        rows.assignee,
        rows.description
    );

    $table.append($tbody);

    $(document.body).append($table);
};

http://jsfiddle.net/userdude/YCecC/

答案 1 :(得分:2)

使用dataType: 'html'应该这样做

function ajaxcall() {
    $.ajax({
        type: 'post',
        url: '/echo/html/',
        dataType: 'html',
        data: {
            // 'html': button + script,
            'html': "test",
        },
        success: function(data) {
            //alert("ajax finished");
            $('#table').html(data);
        },
    });
}

<强> DEMO

希望这有帮助