Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

io.on not sending console.log #11

Open
Kalevera opened this issue Mar 8, 2015 · 4 comments
Open

io.on not sending console.log #11

Kalevera opened this issue Mar 8, 2015 · 4 comments

Comments

@Kalevera
Copy link

Kalevera commented Mar 8, 2015

I have this in package

   {
      "name": "socket-chat-example",
      "version": "0.0.1",
      "description": "my first socket.io app",
      "dependencies": {
        "express": "^4.10.2",
        "socket.io": "^1.3.5"
     }
}

this in my html

<!doctype html>
<html>
  <head>
    <title>Socket.IO chat</title>
    <style>
      * { margin: 0; padding: 0; box-sizing: border-box; }
      body { font: 13px Helvetica, Arial; }
      form { background: #000; padding: 3px; position: fixed; bottom: 0; width: 100%; }
      form input { border: 0; padding: 10px; width: 90%; margin-right: .5%; }
      form button { width: 9%; background: rgb(130, 224, 255); border: none; padding: 10px; }
      #messages { list-style-type: none; margin: 0; padding: 0; }
      #messages li { padding: 5px 10px; }
      #messages li:nth-child(odd) { background: #eee; }
    </style>
  </head>

  <body>
    <ul id="messages"></ul>
    <form action="">
      <input id="m" autocomplete="off" /><button>Send</button>
    </form>
  </body>
  <script src="https://cdn.socket.io/socket.io-1.2.0.js"></script>
<script src="http://code.jquery.com/jquery-1.11.1.js"></script>
<script>
$(document).ready(function(){
  var socket = io();
  $('form').submit(function(){
    socket.emit('chat message', $('#m').val());
    $('#m').val('');
    return false;
  });
  socket.on('chat message', function(msg){
    $('#messages').append($('<li>').text(msg));
  });
});
</script>
</html>

this is in index.js

var app = require('express')();
var http = require('http').Server(app);
var io = require('socket.io')(http);

app.get('/',function(req,res){
    res.sendFile(__dirname + '/index.html');
});

io.on('connection', function(socket){
    socket.on('chat message', function(msg){
        io.emit('chat message: ', msg);
    });
});

http.listen(3000,function(){
    console.log('lisenting on *:3000');
});

For some reason the io.on in index.js wasn't writing to console.log in the middle of tut. and i assumed it was something wrong with windows since alot of console.log doesn't show in CMD.

Anyways does anyone have clue as to why this isn't working? has something depreciated in socket.io that doesn't allow this tutorial to work anymore or is it something specific to windows machines? Thanks for your response

@Brijesh685
Copy link

tht is because you have removed console.log(" xyz") from the code as shown below:

"io.on('connection', function(socket){
socket.on('chat message', function(msg){
io.emit('chat message: ', msg); // add after this line "console.log("anything you want as output")"
});
});"

i am a newbie if i m worng let me know. Explanation appreciated.

@adovbos
Copy link

adovbos commented Jun 18, 2015

its because your scripts is below /body tag, put them above /body and everything will be just fine

@terra1203
Copy link

in index.html give form an id, like:

in script part use #form instead of 'form', like:
$(function() {
var socket = io();
$('#form').submit(function(){
socket.emit('chat message', $('#m').val());
$('#m').val('');
return false;
});
socket.on('chat message', function(msg){
alert(msg); // not working yet??
$('#messages').append($('

  • ').text(msg));
    });
    });

  • @EasonWang01
    Copy link

    #arekan127 not put above,should be put below...

      <body>
        <ul id="messages"></ul>
        <form action="">
          <input id="m" autocomplete="off" /><button>Send</button>
        </form>
        <script src="https://cdn.socket.io/socket.io-1.2.0.js"></script>
        <script src="http://code.jquery.com/jquery-1.11.1.js"></script>
        <script>
          var socket = io();
          $('form').submit(function(){
            socket.emit('chat message', $('#m').val());
            $('#m').val('');
            return false;
          });
          socket.on('chat message', function(msg){
            $('#messages').append($('<li>').text(msg));
          });
        </script>
      </body>
    

    TheSachinSBhat added a commit to TheSachinSBhat/chat-example-1 that referenced this issue Feb 9, 2017
    Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
    Labels
    None yet
    Projects
    None yet
    Development

    No branches or pull requests

    5 participants