Ich habe einige diesbezügliche Beiträge gesehen, aber es scheint nicht, dass es funktioniert. Bei der Weiterleitung bekomme ich einen 'Ressourcenfehler nicht gefunden'.
Ich versuche, auf eine Detailseite umzuleiten. Es gibt eine ID im Element, die ich als NestId speichere, die ich schließlich an die View übergeben kann. Im Moment möchte ich nur auf die Detailseite weiterleiten, da kein Modell oder irgendetwas daran angehängt ist. Ich möchte nur, dass die NestId es dort schafft, damit ich damit mehr AJAX - Aufrufe machen kann.
Hier ist meine jQuery:
$('#results').on('click', '.item', function () {
var NestId = $(this).data('id');
var url = '@Url.Action("Details, Artists")';
window.location.href = url;
})
Hier ist die Funktion auf dem Controller:
public ActionResult Details(string NestId)
{
ViewBag.NestId = NestId;
return View();
}
Ich bin mir nicht sicher, ob ich das richtig mache, aber Hilfe wäre dankbar, ich habe eine Weile daran festgehalten. Vielen Dank!
Wenn Ihr Click-Handler erfolgreich aufgerufen wird, sollte dies funktionieren:
$('#results').on('click', '.item', function () {
var NestId = $(this).data('id');
var url = "/Artists/Details?NestId=" + NestId;
window.location.href = url;
})
BEARBEITEN: In diesem speziellen Fall ist der Parameter der Aktionsmethode eine Zeichenfolge, die nullable ist. Wenn NestId == null
, wird keine Ausnahme ausgelöst, da sich ModelBinder nicht darüber beschwert.
ich habe das immer so gemacht
in view
<script type="text/javascript">
//will replace the '_transactionIds_' and '_payeeId_'
var _addInvoiceUrl = '@(Html.Raw( Url.Action("PayableInvoiceMainEditor", "Payables", new { warehouseTransactionIds ="_transactionIds_",payeeId = "_payeeId_", payeeType="Vendor" })))';
auf javascript datei
var url = _addInvoiceUrl.replace('_transactionIds_', warehouseTransactionIds).replace('_payeeId_', payeeId);
window.location.href = url;
auf diese Weise kann ich die Parameterwerte bei Bedarf weitergeben.
durch Verwendung von @ Html.Raw erhält die URL keine amp; für Parameter
Das würde auch funktionieren, glaube ich:
$('#results').on('click', '.item', function () {
var NestId = $(this).data('id');
var url = '@Html.Raw(Url.Action("Artists", new { NestId = @NestId }))';
window.location.href = url;
})