MVC3을 사용하고 있고 jquery를 사용하여 태그 (링크)를 작성 중입니다. 문제는 필자의 링크가 prod 나 dev 중 하나에서만 작동 할 수 있다는 것입니다. 여기 내 사이트의 생산에 url입니다.dev 및 프로덕션 환경에서 기본 URL 가져 오기
이 내 개발 URL입니다. http://localhost/TVAP
그래서 저는 jquery를 통해 다음과 같이 링크를 만들었습니다. 생산에서
var actionCell = $('#itemlist').find(rowId).find(actionCellId);
$('<a>Edit</a>').attr({ 'id': 'edit-' + response.id, 'href': '/Items/Edit/' + response.id }).appendTo(actionCell);
,이 작동하고,
<a id="edit-17" href="/Items/Edit/17">
그러나 개발 (로컬) 나는이 필요할 때 작동하지 않습니다에 링크를 생성합니다.
<a id="edit-17" href="/TVAP/ItemManagement/Edit/17">
은 내가
$(location).attr('host') ==> localhost
$(location).attr('host') ==> http://localhost/TVAP/Items/Index
어느 너무 적거나 너무 많은 정보를 원하시면에서 다음 얻는다. 나는 내가 localhost를 확인하고 필요에 따라 TVAP를 추가 할 수 있다는 것을 알고 있지만 이것은 해킹처럼 보인다. 다른 개발자는 ASP.NET VS dev 서버를 사용할 수 있으며 localhost를 포함하지만 TVAP가없는 URL을 가져옵니다. 즉 - 이것은 내가 항상 내 _Layout.cshtml에서 할 것입니다 http://localhost:64301/Items/Index
API가 개발중인 Item on 및 ItemManagement에서 지역화 된 이유는 무엇입니까? 청소하십시오. 동일한 API를 사용하십시오. 그렇지 않으면 잠재적 인 오류를 코드에 추가하는 것입니다. 이 작업을 완료하면 URL을 루트 상대가 아닌 페이지 상대로 변경하면 완료됩니다. – Munter