Skip to content

Instantly share code, notes, and snippets.

@mjg123
Created July 21, 2011 22:43
Show Gist options
  • Star 12 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save mjg123/1098417 to your computer and use it in GitHub Desktop.
Save mjg123/1098417 to your computer and use it in GitHub Desktop.
How to make a json(p) request from ClojureScript using jQuery
(def jquery (js* "$"))
(defn show [msg]
(let [data-as-json ((js* "JSON.stringify") msg nil 4)]
((js* "alert") data-as-json)))
(defn make-js-map
"makes a javascript map from a clojure one"
[cljmap]
(let [out (js-obj)]
(doall (map #(aset out (name (first %)) (second %)) cljmap))
out))
(defn doajax []
(.ajax jquery
"http://api.stackoverflow.com/1.1/users/268619"
(make-js-map
{:success show
:dataType "jsonp"
:jsonp "jsonp"})))
(.ready (jquery (js* "document"))
doajax)
<html>
<head>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script>
<script type="text/javascript" src="hello.js"></script>
</head>
<body>
</body>
</html>
@mjg123
Copy link
Author

mjg123 commented Jul 21, 2011

only tested in chrome, btw :)

@ilyasjan
Copy link

Thanks mate....;)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment