In questo caso, in maiuscole URL di tipo hardcode come in un'applicazione ASP.NET MVC. Usare sempre aiutanti URL quando si tratta con gli URL, in questo modo:
$.get('@Url.Action("MyInfo", "Home")', function (data) {
....
});
o se questo è in un file JavaScript separato dove non è possibile utilizzare aiutanti lato server, così si potrebbe ad esempio utilizzare HTML 5 dati- * attributi su alcuni elemento DOM tat si sta AJAXifying, come un div o qualcosa del genere:
<div id="mydiv" data-url="@Url.Action("MyInfo", "Home")">Click me</div>
e poi:
$('#mydiv').click(function() {
$.get($(this).data('url'), function (data) {
....
});
});
o se si sta AJAXifying un modulo o un ancoraggio:
$('#myanchor').click(function() {
$.get(this.href, function (data) {
....
});
return false;
});
in cui l'ancora sarebbe, naturalmente, sono stati generati utilizzando aiutanti:
@Html.ActionLink("click me", "MyInfo", "Home", null, new { id = "myanchor" })
vedere? Non c'è bisogno di url hardcode. Non farlo perché si interromperà nel momento stesso in cui modifichi lo schema dei percorsi in Global.asax
. Seguendo questa tecnica il tuo codice sarà totalmente agnostico a qualsiasi modifica della struttura dei tuoi percorsi.
fonte
2011-09-20 21:29:59
hai provato semplicemente con "myInfo" o "../myInfo"? –
ho provato myInfo quindi ho http: // localhost/myapp/home/index/myinfo –