首页 新闻 会员 周边 捐助

jquery ajax返回json后绑定页面 路过的大侠帮忙看看吧 实在是没有豆了

0
[已解决问题] 解决于 2012-07-24 14:44

ajax 能正确返回数据:

代码:

$("#Jquery").click(function () {
                        $.ajax({
                            type: "GET",
                            url: "/WC_Index/Ajax_Index",
                            data: "name=" + txtname.val(), //要发送的数据   
                            dataType: "json",
                            success: function (data){
                                $.each(data.Mean, function (i, n) {

                                    alert(n.CustomerID + "      " + n.Customer_Name);
                                 });
                            }
                        });
          });

 

我如何重新绑定这个页面呢的菜单呢?没怎么搞过dom节点 大侠帮帮忙

 

 <ul id="listTabe">
            @foreach (System.Data.DataRow item in Model.menu.Rows)
            {
                <li><a id="MeauID" href='@Url.Action("UrlJquery", "WC_Index", new { id = @item["CustomerID"] })' >@item["Customer_Name"]</a></li>
            }
        </ul>

如图:

我点击jet后得到了服务器返回的数据 我现在只要让下面的列表值显示jet

生成的html源码

<ul id="listTabe">
                <li><a id="MeauID" href="/WC_Index/UrlJquery/5">TESTING-BELITUNG</a></li>
                <li><a id="MeauID" href="/WC_Index/UrlJquery/160">jet</a></li>
                <li><a id="MeauID" href="/WC_Index/UrlJquery/183">primajasa</a></li>
</ui>
问题补充:

现在是我输入jet 能够绑定 jet 但是问题来了 我没有输入 (我后台返回的是全部的数据)但是我前天只绑定了最后一个 因为我没有循环绑定?

但是我这样写 不行啊!


        $("#Jquery").click(function () {
            $.ajax({
                type: "GET",
                url: "/WC_Index/Ajax_Index",
                data: "name=" + txtname.val(), //要发送的数据   
                dataType: "json",
                success: function (data) {
                    $.each(data.Mean, function (i, n) {
                        alert(n.CustomerID + "      " + n.Customer_Name);
                        alert(n.Length);
                        alert(data.Mean.Count);
                             $("#listTabe li").empty();
                             for (var i = 0; i < data.Mean.Count; i++) {
                                 $("#listTabe").html($("#listTabe").html() + '<li><a id="MeauID" href="/WC_Index/UrlJquery/' + n.CustomerID + '">' + n.Customer_Name + '</a></li>');
                             }
                            
                    });
                }
            });
        });

s_p的主页 s_p | 初学一级 | 园豆:140
提问于:2012-07-21 19:06
< >
分享
最佳答案
0

alert(n.CustomerID + " " + n.Customer_Name); 把这句话换成往listTabe添加元素不就可以了

可以写成

$("#listTabe").html($("#listTabe").html()+'<li><a id="MeauID" href="/WC_Index/UrlJquery/'+n.CustomerID+'">'+n.Customer_Name+'</a></li>');

 

 

具体你再修改下,可能有语法错误,没有调试过。

奖励园豆:5
Tom.汤 | 老鸟四级 |园豆:3060 | 2012-07-22 23:06

好的

s_p | 园豆:140 (初学一级) | 2012-07-23 09:23

@s_p: 在大侠 你的这个方法可以 了 但是我完善下 还有个问题

就是我没有输入的时候他只绑定最后一个 所以我要循环绑定 但是我加这个 没有效果 我那么写错了啊!

$.each(data.Mean, function (i, n) {
                        alert(n.CustomerID + "      " + n.Customer_Name);
                        alert(n.Length);//undefined
                        alert(data.Mean.Count);//undefined 
                             $("#listTabe li").empty();
                             for (var i = 0; i < data.Mean.Count; i++) {
                                 $("#listTabe").html($("#listTabe").html() + '<li><a id="MeauID" href="/WC_Index/UrlJquery/' + n.CustomerID + '">' + n.Customer_Name + '</a></li>');
                             }
                            
                    });

我怎么样得到这个总数呢?

s_p | 园豆:140 (初学一级) | 2012-07-23 10:09

@s_p: 

要根据你的data地结构来的,你要在each的循环外把

$("#listTabe").html("");//清空

$.each(data.Mean, function (i, n) {

alert(n.CustomerID + " " + n.Customer_Name); 

$("#listTabe").html($("#listTabe").html() + '<li><a id="MeauID" href="/WC_Index/UrlJquery/' + n.CustomerID + '">' + n.Customer_Name + '</a></li>');  });

 

这样应该是可以,具体要调试。

Tom.汤 | 园豆:3060 (老鸟四级) | 2012-07-23 12:15
其他回答(2)
0

不是很懂需求,你都会用 jq ajax ,去看看 jq 的选择器 和 文档处理 那块吧,jq 做 dom 操作还是比较简单的。

张坤 | 园豆:1865 (小虾三级) | 2012-07-21 19:24
0
<ul id="listTabe">
                <li><a id="MeauID" href="/WC_Index/UrlJquery/5">TESTING-BELITUNG</a></li>
                <li><a id="MeauID" href="/WC_Index/UrlJquery/160">jet</a></li>
                <li><a id="MeauID" href="/WC_Index/UrlJquery/183">primajasa</a></li>
</ui>
MeauID 这个id的表示尽量不要相同,否则不方便你的dom处理,如果你只要jet的话,可以使用jquery的 contains的这个函数
Angkor--:-- | 园豆:1086 (小虾三级) | 2012-07-22 00:28
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册