[Javascript] Wie aktualisiert man ein Div mit einem Bild in Django?



Answers

Question

Der folgende Code ist ein Matplotlib-Code, der ein Streudiagramm als Antwort generiert.

def plot(request):
    r = mlab.csv2rec('data.csv')
    fig = Figure(figsize=(6,6))          
    canvas = FigureCanvas(fig)
    ax = fig.add_subplot(111)
    ax.grid(True,linestyle='-',color='gray')
    ax.scatter(r.x,r.y);       
    response=django.http.HttpResponse(content_type='image/png')
    canvas.print_png(response)
    return response

Ich möchte ein div-Tag in der Vorlage mit jquery ajax aktualisieren. Im Folgenden ist der jquery-Code, der auf einen Formularsumbit-Button hört und bei Erfolg ein div aktualisiert.

<script type="text/javascript" charset="utf-8">
    $(function() { 
        $('#plot').submit(function() {
          jQuery.ajax({            
            url: this.action,
            timeout: 2000,
            aysnc: true,
            error: function() {
              console.log("Failed to submit");
            },
            success: function(r) { 
              $('#plotarea').html(r);
              }
          }) 
            return false;
          })
     })
</script>

Aber wenn ich auf den Submit-Button klicke, werden auf dem Div anstelle des Bildes Junk-Zeichen angezeigt.

Könnte mir irgendein Körper zeigen, wie ich das Bild aus der Antwort darstellen könnte?

Danke im Voraus.




Links