2017-01-22 3 views
1

ich eine Controller-Methode, die Bild von MongoDB zurückgibt, und ich möchte es meiner Ansicht nach zeigen:Versuchen Pass Parameter aus dem Blickfeld Controller-Methode

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

      Dim Handler = New MongoDBHandler() 
      Dim newString = cardNumber.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', "data:image;base64," + @Html.Action("ShowImage", "CreditCard", CardNumber)); 
    $("#myModal").append($img); 
} 

Es gibt jedoch eine rote Unterstreichung unter "CardNumber" Parameter für die attr Funktion. Warum?

Antwort

0

Sind Sie sicher, dass Rasiervorlagen mit JavaScript funktionieren? Sie können Ihre Rasierersyntax in js/HTML übersetzen. Aber ich bin mir nicht sicher, dass es umgekehrt funktioniert. Razor Syntax transpiliert, wenn Ihre Seite vom Server gerendert wird, js beginnt zu arbeiten, wenn Seite geladen wird. Sie sollten Ihren Code in js ohne Verwendung von Rasiermesser auf diese Weise umschreiben

+0

so was die Lösung für die Weitergabe von Parametern ohne Rasierer? –

+0

Rendern Sie einfach Ihre URL und übergeben Sie sie als Zeichenfolgen, dann Abfrageparameter hinzufügen – blckt

+0

nicht die Lösung verstehen –