2017-01-25 1 views
1

Ich arbeite an MVC-Projekt und ich bin in einem Fehler beim Versuch, ein Bootstrap-Modal zu öffnen.JavaScript - Uncaught SyntaxError: fehlt) nach Argumentliste

Die Fehlermeldung erhalte ich ist:

Uncaught SyntaxError: missing) after argument list

Dies ist die Taste mit dem Aufruf OnClick ist:

<button id="btnVenueDelete" onclick="DeleteModal(@item.VenueName, @item.VenueID);" class="btn btn-sm btn-info">Delete</button> 

Dies ist die JavaScript-Funktion:

function DeleteModal(name, id) { 
     console.log(Name); 
     console.log(ID); 

     txtModal.innerText = "Delete" + Name; 
     $("#VenueModal").modal(); 
    } 

Ich denke, Das Problem ist auf etwas in der Schaltfläche zurückzuführen, da die Konsolenprotokolle in der Entwicklerkonsole nicht angezeigt werden.

Antwort

3

Sieht aus wie item.VenueName ist einige string Wert. Stellen Sie in diesem Fall sicher, dass die Parameter in Anführungszeichen gesetzt werden.

<button id="btnVenueDelete" 
    onclick="DeleteModal('@item.VenueName', '@item.VenueID');" 
    class="btn btn-sm btn-info">Delete</button> 

Jetzt Ihr Code wird nicht brechen, selbst wenn der VenueName Wert ein String mit Platz ist drin (Ex: "Ann Arbor")

I geht auch davon aus, dass txtModal innerhalb der Methode bereits irgendwo definiert ist es vor dem Gebrauch.

Auch Javascript ist case sensitive. Stellen Sie daher sicher, dass Sie in den Variablen-/Argumentnamen die korrekte Umrandung verwenden.

function DeleteModal(name, id) { 
     console.log(name); 
     console.log(id); 
    } 
+1

Ja, ich habe das Modal definiert und Ihre Lösung hat perfekt funktioniert –

Verwandte Themen