Skip to content

Instantly share code, notes, and snippets.

@panesofglass
Forked from mattpodwysocki/GetJSON.html
Created March 30, 2010 19:08
Show Gist options
  • Save panesofglass/349454 to your computer and use it in GitHub Desktop.
Save panesofglass/349454 to your computer and use it in GitHub Desktop.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>GetJSON</title>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script src="rx.js" type="text/javascript"></script>
<script type="text/javascript">
Rx.Observable.GetJSON = function(url, data) {
var subject = new Rx.AsyncSubject();
var success = function(data, textStatus, request) {
subject.OnNext({request: request,
textStatus: textStatus,
data: data });
subject.OnCompleted();
}
var error = function(request, textStatus, errorThrown) {
subject.OnError({request: request,
textStatus: textStatus,
errorThrown: errorThrown });
}
$.ajax({url: url,
dataType: 'json',
data: data,
success: success,
error : error
});
return subject.AsObservable();
}
$(document).ready(function() {
var url = "http://search.twitter.com/search.json";
var term = "#RxJS";
Rx.Observable.GetJSON(url, { rpp : 100, q : term })
.SelectMany(function(d) { return Rx.Observable.FromArray(d.data.results); })
.Subscribe(function(results) {
$("#twitterList").append("<li>" + results.from_user + " : " + results.text + "</li>");
});
});
</script>
</head>
<body>
<ul id="twitterList">
</ul>
</body>
</html>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment