小编Man*_*nju的帖子

在javascript中将事件附加到动态元素

我正在尝试将html数据动态插入到动态创建的列表中,但是当我尝试为动态创建的按钮附加onclick事件时,事件不会触发.解决方案将非常感激.

Javascript代码:

document.addEventListener('DOMContentLoaded', function () {
document.getElementById('btnSubmit').addEventListener('click', function () {
    var name = document.getElementById('txtName').value;
    var mobile = document.getElementById('txtMobile').value;
    var html = '<ul>';
    for (i = 0; i < 5; i++) {
        html = html + '<li>' + name + i + '</li>';
    }
    html = html + '</ul>';

    html = html + '<input type="button" value="prepend" id="btnPrepend" />';
    document.getElementsByTagName('form')[0].insertAdjacentHTML('afterend', html);
});

document.getElementById('btnPrepend').addEventListener('click', function () {
    var html = '<li>Prepending data</li>';
    document.getElementsByTagName('ul')[0].insertAdjacentHTML('afterbegin', html);
});
Run Code Online (Sandbox Code Playgroud)

});

HTML代码:

<form>
    <div class="control">
        <label>Name</label>
        <input id="txtName" …
Run Code Online (Sandbox Code Playgroud)

javascript

50
推荐指数
5
解决办法
9万
查看次数

在WebAPI中使用Entity Framework对表进行GET调用的异常

我正在尝试使用Entity Framework创建一个WebApi来从数据库中读取数据.

我的数据模型设计如下所示:

在此输入图像描述

我添加了一个名为SportsController这样的WebApi控制器:

public class SportsController : ApiController
{
    public HttpResponseMessage Get()
    {
        try
        {
            using (MyLeagueDBEntities dbEntity = new MyLeagueDBEntities())
            {
                return Request.CreateResponse(HttpStatusCode.OK, dbEntity.tbl_Sports.ToList());
            }
        }
        catch (Exception ex)
        {
            return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

在从浏览器调用我的WebApi控制器GET方法的请求时,我得到如下所示的异常.但是在调试模式下,我可以看到它能够从数据库中获取数据而没有任何错误,但是一旦控件移出方法,它就会抛出以下异常.

例外细节:

"消息":"发生了错误.",
"ExceptionMessage":"'ObjectContent`1'类型无法序列化内容类型'application/json; charset = utf-8'.",
"ExceptionType" 的响应正文:"System.InvalidOperationException",
"StackTrace":null,
"InnerException":{"消息":"发生错误.",
"ExceptionMessage":"从'System.Data.Entity'的'tbl_Tournament'获取值时出错. DynamicProxies.tbl_Sports_7461105FEAC4FCCBDED534FCE44707AF9C7DFE1E4AD69B1E7E3777FBB953F184' ",.
"ExceptionType":" Newtonsoft.Json.JsonSerializationException "
"堆栈跟踪":"
在Newtonsoft.Json.Serialization.DynamicValueProvider.GetValue(目标对象)\ r \n
在Newtonsoft.Json.Serialization.JsonSerializerInternalWriter .CalculatePropertyValues(JsonWriter writer,JasonContainerContract契约,JsonProperty成员,JsonProperty属性,JsonContract&memberContract,Object&memberValue)\ r \n
在Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeObject(JsonWriter writer,Object value,JsonObjectContract契约,JsonProperty成员,JsonContainerContract collectionContract,JsonProperty containerProperty)\ r \n>在Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeValue(JsonWriter writer,Object value,JsonContract valueContract,JsonProperty成员,JsonContainerContract containerContract,JsonProperty containerProperty)\ r \n …

c# entity-framework asp.net-web-api

3
推荐指数
1
解决办法
3054
查看次数