function $(str){ return document.getElementById(str) } function CreateScript(src) { var Scrip=document.createElement('script'); Scrip.src=src; document.body.appendChild(Scrip); } function jsonpcallback(json) { console.log(json);//Object { email="中國", email2="中國222"} } $('btn').onclick=function(){ CreateScript("http://localhost:51335/somejson?callback=jsonpcallback") }
上面的方式中,又要插入script標籤,又要定義一個回調,略顯麻煩,利用jQuery能夠直接獲得想要的json數據,一樣是上面的jsonp:javascript
$("#getJsonpByJquery").click(function () { $.ajax({ url: 'http://localhost:2701/home/somejsonp', dataType: "jsonp", jsonpCallback: "callback", success: function (data) { console.log(data) } }) })
備註:jsonpCallback 注意區分大小寫,其後的字符創表示回調函數名,固然這須要在服務器端加入這個函數名,返回的時候經過這個函數執行。java