Javascript 从WebMethod和sammy.js返回JSON数据

Javascript 从WebMethod和sammy.js返回JSON数据,javascript,sammy.js,Javascript,Sammy.js,我试着遵循一个单页应用程序示例 在JSON应该被解析的地方,我得到了一个错误: SyntaxError:JSON.parse:如果省略数据类型,则出现意外字符:“JSON” 如果我输入dataTyp:'json',则不会出现错误,但不会返回json,也不会填写我的模板 我把它放在一个gridview中,看看我的列表是否返回了…它确实返回了 我已经加载了,jquery,sammy.js,json2.js和sammy.template.js..所有这些都是最新和最好的 我知道这是一个diff网站上的

我试着遵循一个单页应用程序示例

在JSON应该被解析的地方,我得到了一个错误: SyntaxError:JSON.parse:如果省略数据类型,则出现意外字符:“JSON” 如果我输入dataTyp:'json',则不会出现错误,但不会返回json,也不会填写我的模板

我把它放在一个gridview中,看看我的列表是否返回了…它确实返回了

我已经加载了,jquery,sammy.js,json2.js和sammy.template.js..所有这些都是最新和最好的

我知道这是一个diff网站上的示例应用程序,我很感谢你们的时间。我只是喜欢关注和理解水疗应用程序是令人兴奋的

javascript:

$(document).ready(function () {
    //alert('Jquery has loaded');

    var loadOptions = { type: 'get', dataType: 'json', cache: false };
    var app = $.sammy('#sammyDiv', function () {
        this.use('Template');
        this.use('Session');
        this.around(function (callback) {
            var context = this;
            this.load('Default.aspx/GetEmployees', { cache: false })  // loadOptions ) // { dataType: 'json', cache: false })

                    .then(function (items) {

                        context.items = JSON.parse(items).d;   // browser parser... I believe it fails right here
                        //context.items = $.parseJSON(items).d;  //jQuery handling
                        //alert(context.items);
                        //context.items = JSON.stringify(items);
                    })
                    .then(callback);

        });
cs代码:

    static List<Employees> emps;

    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            emps = new List<Employees>();
            Employees emp = new Employees("Kedar", "Kulkarni", "0001", "A");
            Employees emp1 = new Employees("ABC", "XYZ", "21211", "B");
            emps.Add(emp);
            emps.Add(emp1);
        }

        /* using foreach method
        foreach (Person person in persons)
            {
                    Response.Write(String.Format("Name : {0} Age : {1} Address : {2} Job : {3}", person.Name, person.Age, person.Address, person.Job));
                    Response.Write("</br>");
            }
         */
        this.GridView1.DataSource = emps;   //for testing to see if my list gets returned
        this.GridView1.DataBind();
    }

    [WebMethod,  ScriptMethod(ResponseFormat = ResponseFormat.Json, UseHttpGet = true)]
    public static List<Employees> GetEmployees()
    {
        return emps;
    }

终于找到了我的答案:

我取出数据类型:“json”并替换为以下内容。一切都很好


var loadOptions={type:'get',cache:false,contentType:application/json;charset=utf-8}

终于找到了我的答案:

我取出数据类型:“json”并替换为以下内容。一切都很好

var loadOptions={type:'get',cache:false,contentType:application/json;charset=utf-8}