使用jQuery AJAX将数据集绑定到ASP.Net Div标记

使用jQuery AJAX将数据集绑定到ASP.Net Div标记,jquery,asp.net,ajax,Jquery,Asp.net,Ajax,Iam在Div标记内绑定。现在Iam使用repeater内的dataset从db获取数据。每次页面加载从db获取数据时,我都希望避免这种情况。因此我决定使用Jquery ajax绑定dataset。我的问题是如何在Div标记内绑定dataset 我的代码是: <asp:Repeater ID="rep" runat="server" OnItemDataBound="rep_ItemDataBound"> <ItemTemplate>

Iam在Div标记内绑定。现在Iam使用repeater内的dataset从db获取数据。每次页面加载从db获取数据时,我都希望避免这种情况。因此我决定使用Jquery ajax绑定dataset。我的问题是如何在Div标记内绑定dataset

我的代码是:

   <asp:Repeater ID="rep" runat="server" 
    OnItemDataBound="rep_ItemDataBound">   <ItemTemplate>
        <div>
            <p><%#Eval("message") %></p>
        </div>
         </ItemTemplate>
        </asp:Repeater>
Javascript:

$(function () {
    $.ajax
    ({
        type: "POST",
        url: "welcome.aspx/GetMessages",
        data: '{}',
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        success: OnSuccess,
        failure: function (response) {
            alert(response.d);
        },
        error: function (response) {
            alert(response.d);
        }
    });
});

function OnSuccess(response) {
    var xmlDoc = $.parseXML(response.d);
   --Iam stuck Here--
}


因此,如果成功,我如何将数据集绑定到repeater内的div标记。

您真正需要做的就是遍历
$调用返回的XML。ajax
调用并将结果附加到页面上的元素

1.在页面的任意位置添加
。我们将编写
$.ajax
调用的输出,以调用此元素

2.更改
OnSuccess()
函数如下:

function OnSuccess(response) {
    var xmlDoc = $.parseXML(response.d);
    var length = xmlDoc.children[0].children.length;
    $("#result").empty();

    for(var i = 0; i < length; i++)
    {
        var item = xmlDoc.children[0].children[i];
        var message = item.getElementsByTagName("message")[0].innerHTML;
        var div = "<div><p>" + message + "</p></div>";
        $("#result").append(div);
    }
}
函数成功(响应){
var xmlDoc=$.parseXML(response.d);
var length=xmlDoc.children[0].children.length;
$(“#结果”).empty();
对于(变量i=0;i”;
$(“#结果”)。追加(div);
}
}

为什么不删除中继器?嗨,该应用程序就像发布消息一样。因此,如果我发布消息,它将存储在db中,并由中继器通过按发布日期排序的绑定消息取回。前面我使用代码隐藏中的dataset在repeater中绑定,比如rep.DataSource=this.GetMessages();数据绑定代表().但每次发布消息时,它都使用页面加载和获取数据,并将其与我不需要的repeater绑定。因此,我决定使用jquery ajax方法将数据绑定到repeater中,但我在代码中停留了一段时间。.嘿,谢谢。.我已经用我的详细代码编辑了我的问题。你能看看吗。.我不明白你在说什么我给了你答案,你所要做的就是复制粘贴到你的解决方案中并调试它
function OnSuccess(response) {
    var xmlDoc = $.parseXML(response.d);
    var length = xmlDoc.children[0].children.length;
    $("#result").empty();

    for(var i = 0; i < length; i++)
    {
        var item = xmlDoc.children[0].children[i];
        var message = item.getElementsByTagName("message")[0].innerHTML;
        var div = "<div><p>" + message + "</p></div>";
        $("#result").append(div);
    }
}