function getRandomIntInclusive(min, max) { return Math.floor(Math.random() * (max - min + 1)) + min; } var enableClicks = $("#enable").asEventStream("click"); var disableClicks = $("#disable").asEventStream("click"); // Use .map to create a stream with more sensible values than jquery events var enableStream = enableClicks.map(function(x) {return getRandomIntInclusive(1,10);}); var disableStream = disableClicks.map(function(x) {return getRandomIntInclusive(1000,10000);}); // Use .merge to join the two streams together var combinedStream = enableStream.merge(disableStream); // Use .onValue to enable or disable the // textarea combinedStream.onValue(function(x) { console.log("number from result stream:", x); if (x>10) $("#target").prop( "disabled", true ); });