2017-03-22 4 views
0

Dies ist eine Aktion zum Posten eines Kommentars. Aus irgendeinem Grund wird der Kommentar zweimal gepostet. Wenn ich einen Haltepunkt setze, sehe ich, wenn es auf den Grund dieser Aktion kommt, geht es wieder an den Anfang zurück! Ich kann nicht herausfinden, warum?Warum läuft diese Aktion zweimal?

[HttpPost] 
public ActionResult postComment(string comment, string userId, string workerid) 
{ 
    CleanerManager cm = new CleanerManager("Cleaning_LadyConnectionString"); 
    CommentsOnUser c = new CommentsOnUser(); 
    c.Comment = comment; 
    c.CleanerId = int.Parse(workerid); 
    c.UserId = int.Parse(userId); 
    c.Date = DateTime.Today; 
    cm.AddCommentOnUser(c); 
    return this.RedirectToAction 
     ("Profile", new { id = workerid }); 
} 

ist die Javascript

$(".hiredButton").on('click', function() { 
    $("#commentModal").modal(); 
    $(".postComment").on('click', function() { 

     var comment = $("#Message").val(); 

     var workerId = $(".postComment").data('workerid'); 
     var userId = $(".postComment").data('userid'); 


     $.post("/S/postComment", { comment: comment, userId: userId, workerId: workerId }, function() { 
      window.location = "http://baltimoresitter.com/S/profile?Id=" + workerId; 
     }); 
    }); 

}); 

Hier wird die Ansicht

 <button type="button" data-workerid="@Model.Cleaner.id" data-userid="@Model.User.id" class="btn btn-default postComment" data-dismiss="modal">Post Comment</button> 
+1

Es wird wahrscheinlich etwas in Ihrem View sein. – itsme86

+0

Ich denke, das Problem liegt in der Ansicht oder in einem Skript. – Jhonathan

+0

Benutzer Kommentare zu ? Dies kann auf eine clientseitige Ereignisduplikation zurückzuführen sein. – dlatikay

Antwort

1

Jedes Mal, wenn Sie auf die Schaltfläche klicken ein weiteres Ereignis auf die ".postComment" registriert wird, so dass die Leitung

$(".postComment").on('click' ... 

jedes Tim e runs registriert eine weitere Funktion für das click-Ereignis und Sie werden es mehr als einmal aufgerufen sehen.

Verwandte Themen