2016-05-03 7 views
1
function populateMatches(id) { 
var url = "/get_matches/?s=" + id; 
$.get(url, function(response) { 
    $container = $('.match-list-container'); 
    var i = 0; 

    if (response.length > 0) { 
     $container.html(""); 
     $container.append("<h5>Matches</h5>"); 
     $.each(response,function(){ 
      $container.append($("<h4>").text(response[i].match_percentile)); 
      $container.append($("<h6>").text("%")); 
      $container.append($("<p>").text(response[i].match.content)); 
      $container.append('<form action="#" method="POST" id="match-info-form"><input type="checkbox" id="approve">Approve<input type="checkbox" id="discard">Discard<input type="checkbox" id="skip">Skip<br><input type="submit" id="savebutton" value="Save">'); 
      i++; 
     }) 
    } else { 
     $container.html(""); 
     $container.append("<h5>No Match Found</h5>"); 
    } 
}); 
} 

populateMatches ist Funktion hinzuzufügen, die auf einem Click-Ereignis aufgerufen wird. Der Server sendet eine Antwort, die variable Anzahl der Objekte enthält, abhängig von dem angeklickten div.Wie CSRF-Token auf eine dynamisch generierte Form von Javascript

Also, wenn 'n' Objekte in der Antwort vorhanden sind, muss ich n Formulare dynamisch erstellen und daher kann das Formular in einer statischen HTML-Datei nicht erstellen.

Aber wie füge ich das CSRF-Token zum Formular in meiner Javascript-Datei hinzu?

Ich weiß, man kann einfach schreiben {% csrf_token%} in einem HTML-Template-Formular, aber wie dieses Problem zu lösen, wenn Formular dynamisch generiert wird.

P.S. Ich möchte nicht csrf Überprüfung ausschließen

Antwort