2017-03-24 1 views
0

나는 node.js와 express.js 프레임 워크를 사용하고 뷰 엔진을 "ejs"로 설정하여 프로젝트를 진행하고 있습니다. 프로젝트의 기능은 다음과 같습니다.
1. 사용자로부터 입력을받습니다.
2. 입력을 사용하여 웹 사이트 API에 요청을 보냅니다.
3. 해당 API의 특정 데이터 (나중에 사용할 ID 포함)를 인쇄하십시오.
4. 위에서 언급 한 데이터로 구성된 목록에서 사용자가 항목 (즉 'a'태그)을 클릭하면이 항목의 ID를 사용하여 동일한 웹 사이트에 다른 요청을 보내서 해당 항목에 대한 자세한 정보를 얻습니다. 목..ejs 파일에서 express.js로 변수 전달하기

나는 4 단계에서 멈췄다. 질문 :
.ejs 파일에서이 id를 보내 사용자가 항목을 클릭하면 node.js에 요청을 게시하는 방법은 무엇입니까?
다른 방법을 사용하면 간단합니다. response.render ("view name", {nodeJsVar : ejsVar}); 그러나 어떻게 그것을 돌려 보내는가?
도움 주셔서 감사합니다.

답변

3

먼저 "라고 .ejs이 파일에서"당신이 어떤 데이터를 를 보낼 수 없습니다은 - 당신이 할 수있는 일은 브라우저에서 보낼 것입니다 , 렌더링 된 HTML (및 JavaScript) 및 EJS가 아닙니다.

원하는 경우 클라이언트 측 JavaScript를 사용하여 수행 할 수 있습니다.

표준 <a href="..."> 링크를 사용하는 경우 경로 매개 변수 또는 검색어 매개 변수로 URL에 변수의 값을 삽입하면됩니다.

양식 및 버튼을 사용하는 경우 숨겨진 입력을 양식에 넣을 수 있습니다.

AJAX를 사용중인 경우 요청의 모든 부분에 입력 할 수 있습니다.

http://localhost/something?x=X 
:

http://localhost/something/X 

여기 X 쿼리 매개 변수입니다 : 경로 매개 변수 여기 X -

그냥 당신이 무엇을 혼동 할 수 있기 때문에 무엇인지 확인합니다
0

이 (당신이 jQuery를 사용하는 가정) 시도 : 모든

$.ajax({ 
    url: '/routename_to_handle_id', 
    type: 'POST', 
    data: { id: id } 
}).done(function(response){ 
//callback to handle if it's successful 
})