Hoe maak je werk ajax met de nieuwste jQuery in jsfiddle?

Mijn ajax jsfiddle werkt niet met de nieuwste jQuery (1.7.2) maar 1.4.x is oké. Met behulp van firebug kan ik zien dat de reactie correct is maar dat het succes niet is ontslagen.

Enig idee hoe het te laten werken voor de nieuwste?

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'
    });
}

final working version is here

1
@Dhiraj: kun je een antwoord maken vanuit je reactie zodat ik het kan accepteren?
toegevoegd de auteur Radek, de bron
gebruik dataType als dataType: 'html' het zal werken, in jouw geval heb je dataType twic gedeclareerd
toegevoegd de auteur Dhiraj, de bron
Mijn antwoord bijgewerkt met een werkende viool. Ik heb het dataType helemaal geëlimineerd, dus ...? Ook is er een vertraging van vijf seconden bij de aankomst.
toegevoegd de auteur Jared Farrish, de bron

2 antwoord

Gebruik dataType: 'html' zou het moeten doen

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

Ik hoop dat dit helpt

2
toegevoegd
Ik dacht dat je zou zeggen dat ik het datatype twee keer had gebruikt ;-)
toegevoegd de auteur Radek, de bron

BEWERK:

Hier is een werkende versie met behulp van /echo/html/ en 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/


Ik wist dat ik er ergens een had, maar helaas heb ik geen zuivere html-versie klaarliggen.

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/

2
toegevoegd