2012-09-30 2 views
4

나는 node.js에 대해 아주 익숙하다. 그래서 이것은 잠재적으로 어리석은 질문 일 뿐이다. 나는 새로운 페이지가 요청되었을 때, 데이터 이벤트를 발생 시킨다는 것을 알고있다. 내 현재 프로젝트에서, 나는 몇 가지 이벤트를 트리거하는 HTML 단추가 있지만 페이지를 리디렉션하지 않습니다. 이 때문에 노드는 이것이 발생하고 있음을 인식하지 못합니다. 이걸 감지 할 수있는 방법이 있습니까? 또는 해결 방법으로 웹 페이지에 포함 된 javascript에서 내 노드 함수 중 하나를 호출 할 수있는 방법이 있습니까?html 단추를 발견하면 node.js를 클릭하십시오.

덕분에 ~

+0

Node.js를 클라이언트 측 자바 스크립트에서 해당 이벤트를 수신하지 않는 HTML 버튼을 클릭 이벤트를 수신하지 않습니다 및 AJAX 또는 WebSocket을 통해 Node.js에 던져 넣으십시오. – InspiredJW

답변

3

두 가지를 섞어 놓고 있습니다. 브라우저에서 웹 사이트를 가리키고 클라이언트에서 서버로 데이터를 보내고 보낼 때 네트워크 연결이 설정되어 대화중인 노드의 데이터 이벤트가 트리거됩니다 그리고 뒤로.

이것은 클라이언트 측 UI 이벤트 (예 : 버튼의 클릭 이벤트)와는 아무런 관련이 없습니다.

노드가 서버의 버튼을 클릭해야하는 것을 인식하게하려면 양식을 사용하거나, 아약스 요청을하거나, 웹 소켓을 사용할 수 있습니다. jQuery로 아약스 요청에 대한

가 : Node.js를위한 대중적인 WebSocket을 구현

입니다 jquery $.ajax documentationsocket.io

1

클라이언트 측에서 노드에 뭔가를 호출 할 경우, 노드에 이벤트를 전송하는 socket.io을 사용할 수 있습니다. 그런 다음 해당 이벤트를 catch하고 올바른 데이터를 다시 클라이언트로 리턴하십시오. socket.io "How to Use"을 참조하십시오.

관련 문제