2017-01-24 2 views
0

Ich habe eine Controller-Methode, das Bild in Byte-Array zurückgibt, von MongoDB, und ich möchte es meiner Ansicht nach zeigen:Bild anzeigen nach Taste klicken

<HttpPost()> 
     Function ShowImage(id As String) As FileContentResult 

      Dim Handler = New MongoDBHandler() 
      Dim newString = id.Replace(vbLf, "").Trim().Replace("""", String.Empty) 
      Dim byteArray = Handler.ReadImage(newString) 

      Return File(byteArray, "image/png") 
     End Function 

Ich habe die JavaScript-Funktion:

function postCardNumber(elm) { 

      var CardNumber = $(elm).closest("tr").find(".card-number").html(); 

      var $img = $('<img>'); 
      $img.attr("src", "/MyController/MyMethod/CardNumber"); 
      $("#myModal").append($img); 

      } 

die Tabelle: enter image description here

Wenn der Button "anzeigen" klicken, auf dem Tisch, die "Nein" Zelle (und ist Daten) wird an die JS-Funktion gesendet und an den Controller übergeben, dann versuche ich, neues Bildelement mit zu erstellen, und fügen Sie es zu meinem Popup-Modal für die Show. Das Problem ist, kann ich nicht die Controller-Antwort bekommen, und verbrachte Stunden in Google-Suche für sie, irgendwelche Lösungen bitte?

+0

Shouldnt ' "/ MyController/MyMethod/Cardnumber"' 'sein"/MyController/MyMethod/"+ Kartennummer"? Sonst sendest du die Zeichenfolge "CardNumber" an den Server –

+0

das ist der Weg, die Controller-Methode zu sprechen? –

+0

Aber möchten Sie nicht z. ""/MyController/MyMethod/364091670 "'? –

Antwort

1

versuchen Sie folgendes und überprüfen Sie, ob es funktioniert. Überprüfen Sie, ob der Name des Controllers, den Sie in der folgenden URL angeben, korrekt ist. Ich bin mir nicht sicher, dass Ihr Controller Name "MyController" ist. überprüfen Sie es und ändern Sie es, wenn es falsch ist. Wenn folgenden Code nicht funktioniert, senden Sie mir die url es in Kommentar erzeugt

Funktion postCardNumber (Ulme) {

 var CardNumber = $(elm).closest("tr").find(".card-number").html(); 

     var $img = $('<img>'); 
     $img.attr("src", "@(Url.Action("ShowImage","CreditCard"))/" + CardNumber); 
     $("#myModal").append($img); 

     } 
+0

Thx auf help.Ich habe diesen Fehler: [link] (https://s29.postimg.org/6rw8yp5rb/error.png) Mein Controller Name ist: "CreditCard", und Verfahren: „Showimage“ Zusätzlich verwende ich VB nicht C# –

+0

mit aktualisierten Antwort versuchen verwenden Url.Action –

+0

ich Haltepunkt auf Showimage-Funktion setzen, aber es hat nicht sie erreichen –