JavaScript运行时错误:对象不存在';t支持属性或方法';更换';在jquery-ui.js中

JavaScript运行时错误:对象不存在';t支持属性或方法';更换';在jquery-ui.js中,javascript,c#,jquery,asp.net-mvc,jquery-ui-datepicker,Javascript,C#,Jquery,Asp.net Mvc,Jquery Ui Datepicker,我的控制器中有以下方法 [HttpPost] public ActionResult GetEventsForMonth(int month, int year) { var events = new ListWithDuplicates(); Dictionary<string, string> eventsnew = new Dictionary<string, string>(); var ndates = (from nd in MCBDM

我的控制器中有以下方法

[HttpPost]
public ActionResult GetEventsForMonth(int month, int year)
{
    var events = new ListWithDuplicates();
    Dictionary<string, string> eventsnew = new Dictionary<string, string>();
    var ndates = (from nd in MCBDM.News where nd.nsdate.Month==month && nd.nsdate.Year==year select nd.nsdate).ToList();
    var nevents = (from ne in MCBDM.News where ne.nsdate.Month==month && ne.nsdate.Year==year select ne.nbrief).ToList();
    for (int i = 0; i < ndates.Count;i++ )
    {
        events.Add(ndates[i].Day.ToString(), nevents[i].ToString());
        eventsnew.Add(ndates[i].Day.ToString(), nevents[i].ToString());
    }

    Thread.Sleep(1000);
    return Json(events);
  }

public class ListWithDuplicates : List<KeyValuePair<string, string>>
{
    public void Add(string key, string value)
    {
        var element = new KeyValuePair<string, string>(key, value);
        this.Add(element);
    }
}

我面临的问题是——每当我传递类型为
ListWithDuplicates
的事件时,我都会收到javascript错误,说
javascript运行时错误:对象不支持jquery ui.js中的属性或方法“replace”,但如果我从控制器通过JSON方法传递新的事件,我不会得到任何错误,日历将正确显示。谁能告诉我我用的型号有什么问题吗。我已经附上了一个手表的屏幕截图,它有两个事件和事件新的内容,并且都将有相同的格式和内容类型。但当返回事件时,仍然会显示javascript错误

我刚刚在我的ajax成功方法中添加了以下代码,效果非常好:)

问题是eventsnew正在返回一个对象,而events正在返回对象数组作为结果。我刚开始检索对象数组并将其存储为object

  success: function (data) {
            $.each(data, function (index) {
                var obj = data[index];
                calendarEvents[obj.Key] = obj.Value;
            });
    },

在浏览器控制台中检查ajax请求的主体,以查看实际的内容sent@charlietfl.. 好极了,伙计……)这是一个绝妙的建议eventsnew正在返回一个对象,events正在返回对象数组作为结果。我刚开始检索对象数组,并将其存储为object:)
var calendarEvents = {};
function getEvents(month,year)
{
    $.ajax({
        url: "Home/GetEventsForMonth",
        type:"Post",
        data: JSON.stringify({ month: month, year: year }),
        dataType: 'json',
        processdata: false,
        contentType: 'application/json; charset=utf-8',
        success: function (data) { 
            calendarEvents = data; },
        error: function (xhr, ajaxOptions, thrownError) { 
            $("#cal_error").text("Something Went wrong!! Please try after sometime!!");
        },
        complete: function (x, y) { 
            $("#datepicker").datepicker("refresh"); }

    });
}
  success: function (data) {
            $.each(data, function (index) {
                var obj = data[index];
                calendarEvents[obj.Key] = obj.Value;
            });
    },