一用戶端( url:http://192.168.1.2:81/jsonp_test.jsp
)
用戶端頁面首先在body 中放置一個div: <div id="res"></div> 将遠端調用的資料寫入該div中

<script type="text/javascript" src="/js/jquery-1.3.2.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$.ajax({
url:'http://192.168.9.5/jsonp_test1.jsp',
dataType:"jsonp",
jsonp:"jsonpcallback",
success:function(data){
var $ul = $("<ul></ul>");
$.each(data,function(i,v){
$("<li/>").text(v["id"] + " " + v["name"]).appendTo($ul)
});
$("#res").append($ul);
}
});
});
</script>
服務端(
http://192.168.9.5/jsonp_test1.jsp)
代碼很簡單,就是輸出一個字元串
比如正常輸出json應該是:[{"id":"1","name":"測試1"},{"id":"2","name":"測試2"}]
jsonp 則輸出: jsonpcallback([{"id":"1","name":"測試1"},{"id":"2","name":"測試2"}]) 其中“jsonpcallback”是用戶端傳過來的

jsonp = request.getParameter("jsonpcallback")
str = "[{"id":"1","name":"測試1"},{"id":"2","name":"測試2"}]"
str = jsonp + "(" +str+")"
response.Write(str)
由于 jquery 在ajax 進行中使用的是utf-8編碼傳遞參數的,是以jsonp處理端用utf-8的編碼最好,這樣省得編碼轉換了
捐助開發者
在興趣的驅動下,寫一個
免費
的東西,有欣喜,也還有汗水,希望你喜歡我的作品,同時也能支援一下。 當然,有錢捧個錢場(右上角的愛心标志,支援支付寶和PayPal捐助),沒錢捧個人場,謝謝各位。
謝謝您的贊助,我會做的更好!