title: signalr client doesn't fire on click listener
body: <p>The process is : When the <code>.post-thread</code> is clicked, it calls the server through the hub, returns a <code>&lt;p data-id = id class = 'take-thread'&gt;</code>, and appends on <code>foo</code> div. Then I click the <code>&lt;p&gt;</code>, it should run <code>TakeThread</code> at server side.</p>
  
  <p>However, when I click on the newly appended <code>&lt;p&gt;</code>, <code>console.log('test')</code> doesn't fire until I added the code in the star rectangle. I don't understand why. There is already a listener in the <code>Hub.start().done()</code> to trigger the click. Why do I have to do it in the hub client function ?</p>
  
  <p>JS:</p>
  
  <pre><code>var chat = $.connection.chatHub;
  chat.client.updateThings(id){
     $('.foo').append('&lt;p data-id = "id" class = "take-thread"&gt;&lt;/p&gt;');
  
     // Why do I need to these code below?  
     ************************************************  
     * $('.take-thread').on('click', function () {  *
     *     console.log("test");                     *   
     *     chat.server.takeThread("blah...");       * 
     * });                                          * 
     ************************************************
  
  }
  
  $.connection.hub.start().done(function () {
      $('.post-thread').on('click', function () {
          chat.server.postThread("Test"); // works
      });
      $('.take-thread').on('click', function () {
          console.log("test");
          chat.server.takeThread("blah..."); 
      });
  }     
  </code></pre>
  
  <p>C# Hub:</p>
  
  <pre><code>public void PostThread(string title) {
      var id = someCalculation();
      Clients.All.updateThings(id);
  }
  
  public void TakeThread(string title) {
      // do things
  }
  </code></pre>