Ich versuche, auf eine andere Route umzuleiten, indem ich:
$location.path("/route");
Aber aus irgendeinem Grund funktioniert es nicht. Ich habe ein Widget mit automatischer Vervollständigung unter Verwendung von jQuery-UI erstellt und rufe eine Funktion aus dem Bereich auf, sobald der Benutzer eine Option ausgewählt hat. Ich habe es debuggt und es tritt in die Funktion ein, aber es wird nie auf die andere Route umgeleitet. Es ändert die Route nur, wenn ich eine Taste drücke.
Ich finde es irgendwie seltsam, aber ich habe nicht herausgefunden, wie ich das lösen soll. ich benutzte
window.location = "#/route";
und es funktioniert, aber ich möchte die path()
Funktion verwenden.
Hat jemand eine Idee, warum das passiert?
Vergessen Sie nicht,
$location
in den Controller einzuspritzen .quelle
Angenommen, Sie verwenden kein HTML5-Routing, versuchen Sie es
$location.path("route")
. Dadurch wird Ihr Browser auf#/route
den gewünschten Browser umgeleitet .quelle
Wenn Sie aus Ihrer eckigen Anwendung umleiten müssen, verwenden Sie
$window.location
. Das war mein Fall; hoffentlich findet es jemand nützlich.quelle
Überprüfen Sie Ihre Routing-Methode:
wenn Ihr Routing-Status so ist
dann solltest du verwenden
quelle
Es ist schwer zu sagen, ohne Ihren Code zu kennen. Ich gehe davon aus, dass das
onchange
Ereignis nicht ausgelöst wird, wenn Sie Ihren Textfeldwert aus JavaScript-Code ändern.Es gibt zwei Möglichkeiten, wie dies funktioniert. Das erste ist, selbst anzurufen
onchange
, und das zweite ist, darauf zu warten, dass das Textfeld den Fokus verliert.Überprüfen Sie diese Frage ; gleiches Problem, anderer Rahmen.
quelle