+1  A: 

You've got a syntax error:

$('input:checkbox').live('click', function () {
    // works fine 
});

$('select').live('change', function () {
    // should be working now
});

Note the ); that I've added.

Edit now that you've updated your question, my answer doesn't make sense. I'm going to guess, however, that you've got additional code between these two lines, and that code is raising an error, which stops the second live() call from being called.

That's just a guess, though....

Dean Harding
Yeah, I fixed the question - if that was the problem, it wouldnt have worked at all :). Yes, I do have code in the middle, but remember if I switch the order it everything works fine. So, I don't think it's the code cause an error.
OneDeveloper
@OneDeveloper: you said it's the second one that fails, no matter which one that is. That tells me it's getting an error *between* when the first one executes and the second one. I suggest you use something like Firebug which will report any Javascript errors that you might otherwise miss.
Dean Harding
A: 

Your are missing paranthesis behind both .live statements.

$('selector').live('event', function(){
});  // close the anonymous function
jAndy
A: 

You need to close parentheses. Here's a working example:

$(function() {
    $('select').live('change', function() {
        alert('change');
    }); 
    $('input:checkbox').live('click', function() {
        alert('click'); 
    }); 
}); ​
Darin Dimitrov
I must have forgotten this during copying the code. This is not really the problem.
OneDeveloper
@OneDeveloper, I don't know if this is not really the problem but did you follow the link I posted? It works! So I don't see a reason for downvote.
Darin Dimitrov
do you think it wouldve worked at all if it was a syntax problem? I am sorry for the downvote, but I was trying to say this is not the answer.
OneDeveloper
@OneDeveloper, no it doesn't work with the syntax error.
Darin Dimitrov