JsonP的簡單demo

 

服務器端代碼javascript

public ActionResult GetNewUploadCourseIds()
        {
            string time = "0";
            var result = new Result<NewUpload>() { Data = new NewUpload() };
            result.Data.Ids = courseBLL.GetNewUploadCourseIdsByTime(time);
            result.Data.Time = DateTime.Now;
            result.Data.UpdateCount = courseBLL.GetNewUpdateCourseCountByTime(time);
            return new ContentResult()
            {
                Content = "myCallBack(" + JsonConvert.SerializeObject(result) + ")",
                ContentType = "text/html"
            };
        }

//ContentType必定要是text/html類型。html

返回值是java

 

而後是jQuery代碼:ajax

<script type="text/javascript">
    $(function () {
        $("#btn").click(function () {    
            $.ajax({
                url: "http://localhost:50049/service/GetNewUploadCourseIds?time=123",
                dataType: "jsonp",
              //  jsonp: "", //
                jsonpCallback: "myCallBack", //須要的回調函數
                success: function (data) {
                    alert("success");
                },
                error: function () {
                    alert("fail");
                }
            });
        });  
    });
    function myCallBack(result) {
        alert(result.Data.UpdateCount);
    };
</script>

執行結果:json

彈出alert框兩次,分別是回調函數和"sucess"服務器

 

函數

相關文章
相關標籤/搜索