无法使用jQuery绑定HTML元素

时间:2013-12-28 22:28:34

标签: jquery html asp.net ajax

我有一个ajax函数,它从数据库中检索我要在网站上显示的所有产品的列表

Ajax调用工作正常,问题是我我无法在运行时绑定特定div上的元素。但是我可以在警报框中获取所有项目。

这是我的Ajax jQuery调用:

function GenerateList()
{
    if (getCookie("AnonymousBasket") != "")
    {
        var Records;
        $.ajax({
            type: "POST",       //GET or POST or PUT or DELETE verb
            url: "Section_v1.aspx/GetAnonymousBasketItems",         // Location of the service
            data: "{'AnonymousBasketID' : '" + $.trim(getCookie("AnonymousBasket")) + "'}",         //Data sent to server
            contentType: "application/json",        // content type sent to server
            dataType: "json",   //Expected data format from server
            processdata: true,  //True or False
            async : false,
            success: function (data) {//On Successful service call
                if (data.d.TotalRecordCount > 0) {
                    $(".myNewCart").append("<ul>");
                    $.each(data.d.Records, function (index, item) {
                        $(".myNewCart").append("<li>" + GenerateHTML(item.PackageInfo.ProductsInfo.ImagePath, item.PackageInfo.ProductsInfo.Name, item.PurchasedUnits, item.PackageInfo.SabkaSupermarketPrice, parseInt(parseInt(item.PurchasedUnits) * parseInt(item.PackageInfo.SabkaSupermarketPrice))) + "</li>");
                    })
                }
            },
            error: function (json) {
                alert("Error: " + json.status);
            }// When Service call fails
        });


    }
}
GenerateList();

这是主页上的我的Div:

<div class="myNewCart"></div>

WEBMETHOD

[System.Web.Services.WebMethod(EnableSession = true)]
    [System.Web.Script.Services.ScriptMethod]
    public static object GetAnonymousBasketItems(Guid AnonymousBasketID)
    {
        List<Entities.AnonymousBasket> cart = basket.GetProductsFromAnonymousBasket(AnonymousBasketID);
        int productCount = cart.Count;
        //List<Entities.AnonymousBasket> filteredProducts = cart.Skip(jtStartIndex).Take(jtPageSize).ToList();
        return new { Result = "OK", Records = cart, TotalRecordCount = productCount };
    }

我无法弄清楚为什么它没有约束力。

2 个答案:

答案 0 :(得分:0)

您的$ .each正在使用“Records”来填充div,而在“data”字段中正在检索ajax数据。

答案 1 :(得分:0)

我得到了解决方案,一切都已到位,问题是<div>调用后放置了javascript标记,因此脚本无法找到div < / p>我把脚本放在页面的页脚上,然后就可以了。

无论如何,谢谢大家的帮助。