Nó hoạt động tốt trong chrome, firefox và IE8. Nhưng đưa ra một lỗi trên IE7. Đây là sự kiện onchange jquery của tôi.JSON không được xác định trong IE7
$('select#NationId').change(function() {
var nationId = $(this).val();
$.ajax({
url: 'LoadAreas',
type: 'POST',
data: JSON.stringify({ nationId: nationId }),
dataType: 'json',
contentType: 'application/json',
success: function (data) {
$('select#AreaId').get(0).options.length = 0;
$('select#AreaId').append('<option value="0">Select All</option>');
$.each(data, function (val, Areas) {
$('select#AreaId').append('<option value="' + Areas.Id + '">' + Areas.Name + '</option>');
});
}
});
});
khiển
[HttpPost]
public ActionResult LoadAreas(int nationId)
{
var _Areas = (from c in SessionHandler.CurrentContext.ChannelGroups
join cgt in SessionHandler.CurrentContext.ChannelGroupTypes on c.ChannelGroupTypeId equals cgt.ChannelGroupTypeId
where cgt.Name == "Area" && c.ParentChannelGroupId == nationId
select new AreaName() { Id = c.ChannelGroupId, Name = c.Name }).OrderBy(m => m.Name);
if (_Areas == null)
return Json(null);
List<AreaName> managers = (List<AreaName>)_Areas.ToList();
return Json(managers);
}
tôi đã thử . Sự kiện onchange không bị sa thải. – bladerunner
Đầu tiên, tôi giả sử bạn * không * thực sự hotlinking với JSON2 ;-) Thứ hai, là sự kiện * không kích hoạt? (Và điều này chỉ có trong IE7?) –
Tôi đã sao chép tập lệnh có trong tệp json2.js, đã thêm vào dự án của tôi và tham chiếu tệp đó trên trang cái của tôi. Đó là tất cả những gì tôi đã làm. – bladerunner