Ich versuche, auf eine Funktion innerhalb einer SignalR-Verbindungsfunktion zuzugreifen. Um das besser zu veranschaulichen, ist der Code für das gesamte Skript.Ich kann keine Funktion innerhalb der SignalR-Verbindungsfunktion erreichen.
$(function() {
var chat = $.connection.chatHub;
chat.client.informOfStatusRequest = function(personToNotify, message) {
var sysUserId = @Convert.ToInt32(HttpContext.Current.Request.Cookies["sys_user_id"].Value);
if (sysUserId === personToNotify) {
$.notify({
icon: 'glyphicon glyphicon-star',
message: message
}, {
animate: {
enter: 'animated fadeInRight',
exit: 'animated fadeOutRight'
}
});
}
}
$.connection.hub.start().done(function() {
function disapproveTicket(ticketId, createdById) {
bootbox.confirm({
title: 'CONFIRM',
message: 'Disapprove ticket ID ' +ticketId +'?',
buttons: {
confirm: {
label: 'YES',
className: 'btn-success'
},
cancel: {
label: 'NO',
className: 'btn-danger'
}
},
callback: function(response) {
if (response === true) {
$.ajax({
type: 'POST',
url: '/Member/DisapprovePendingTicket',
data: {ticketId: ticketId} ,
success: function(result) {
if (result === true) {
$.notify({
icon: 'glyphicon glyphicon-star',
message: "Ticket has been disaproved"
}, {
animate: {
enter: 'animated bounceIn',
exit: 'animated bounceOut'
}
}, {
type: 'success'
});
$("#div_get_pending_ticket").load('/Member/GetPendingTicket');
getPendingRequestCount();
chat.server.informUserOnRequestStatus(createdById,"Ticket has been disaproved");
} else {
$.notify({
icon: 'glyphicon glyphicon-star',
message: "Failed in disapproving the ticket."
}, {
animate: {
enter: 'animated bounceIn',
exit: 'animated bounceOut'
}
}, {
type: 'success'
});
}
}
});
}
}
});
}
});
});
und das ist, wie ich versuche, die „disapproveTicket“ Funktion zuzugreifen:
<td>
<a href="javascript:void(0);" onclick="">Check</a> |
<a href="javascript:void(0);" onclick="disapproveTicket(@item.TicketId, @item.CreatedById)">Disapprove</a>
</td>
Auf meiner Konsole heißt es, dass „disapproveTicket nicht definiert ist“. Das ablehnendeTicket befindet sich in einer $ (function()) und befindet sich in $ .connection.hub.start() .done(). Ich habe andere Antworten darauf gesehen, wie man auf geschachtelte Funktionen zugreifen kann, aber die Struktur unterscheidet sich von dem, was ich habe. Kannst du es mir bitte zeigen? Vielen Dank.
ich die JavaScript in HTML zu sehen. Irgendwie ist es einfach nicht erreichbar. Ich rate vielleicht, weil es in einer anderen Funktion ist. Da brauche ich Hilfe. – Ibanez1700
Ich bearbeite meine Antwort, sorry, weil ich am Anfang nicht sah, dass Sie $ (function() {}) verwenden –
Wenn ich es so benutze, wie kann ich meine Parameter übergeben? Ich übergebe'@item.TicketId und @ item.CreatedById 'aus meiner Teilansicht. – Ibanez1700