客户端JS三种写法:
<%-- <script type="text/javascript" src="http://code.jquery.com/jquery-latest.js"></script>
<script type="text/javascript">
$.getJSON("http://localhost:12379/handler1.ashx?callback=?", function (data) {
alert(data.name + " is a a" + data.sex);
});
</script>--%>
<script type="text/javascript" src="http://code.jquery.com/jquery-latest.js"></script>
<script type="text/javascript">
$.ajax({
url: "http://localhost:2073/Default.aspx?callback=?",
dataType: "jsonp",
success: function (data) {
alert(data.name + " is a a" + data.sex);
}
});
</script>
<%-- <script type="text/javascript">
function addScriptTag(src){
var script = document.createElement('script');
script.setAttribute("type","text/javascript");
script.src = src;
document.body.appendChild(script);
}
window.onload = function(){
//调用远程服务
addScriptTag("http://localhost:12379/handler1.ashx?callback=person");
}
//回调函数person
function person(data) {
alert(data.name + " is a " + data.sex);
}
</script> --%>
服务端:
新建ashx 文件 processstart里面添加代码
string callback = context.Request.QueryString["callback"];
//json数据
string json = "{\"name\":\"chopper\",\"sex\":\"man\"}";
context.Response.ContentType = "application/json";
//输出:回调函数名(json数据)
context.Response.Write(callback + "(" + json + ")");
//string call = callback + "(" + json + ")";
COnfig里面注册:
<httpHandlers>
<add path="*.aspx" verb="*" type="WebApplication4.Handler1,WebApplication4"/>
</httpHandlers>