通过C#代码隐藏将列表项添加到jqueryui

时间:2012-09-03 06:35:01

标签: c# jquery .net jquery-ui jquery-ui-selectable

我正在使用this plugin来显示可选列表。

虽然它工作正常,但我需要从C#后面的代码填充这些列表项。 你能指点我正确的方向吗?

这是代码隐藏部分:

 wnetEntities1 db = new wnetEntities1();
 var wl = from w in db.wnet_available
         join role in db.wnet_userinfo
         on w.UserID equals role.UserId
         where w.AvailStatus == 1 && role.WLId == 1
         select new { w.UserID, role.FirstName };

wl.ToList();
foreach (var w in wl)
{
    var name = w.FirstName;

//猜测这是应该生成li项的位置。     }

这是html列表(需要从asp.net生成):

        <ol id="selectable">

        <li class="ui-widget-content">Item 1</li>
        <li class="ui-widget-content">Item 2</li>
        <li class="ui-widget-content">Item 3</li>
        <li class="ui-widget-content">Item 4</li>
        <li class="ui-widget-content">Item 5</li>
        <li class="ui-widget-content">Item 6</li>
        <li class="ui-widget-content">Item 7</li>
    </ol>

2 个答案:

答案 0 :(得分:1)

能够在服务器端看到您的ol元素,首先向其中添加runat="server"

<ol id="selectable" runat="server">  

然后您可以轻松地将li添加到其中:

foreach (var w in wl.ToList())
{
    HtmlGenericControl li = new HtmlGenericControl("li");
    li.Attributes.Add("class", "ui-widget-content");
    li.InnerText = w.FirstName;
    selectable.Controls.Add(li);
}

答案 1 :(得分:0)

喜欢这个吗?

   <% var items = wl.ToList(); %>

        <ol id="selectable">

         <%   foreach (var w in items)
            { %>
            <li class="ui-widget-content"><%=w.FirstName %></li>

            <% } %>
       </ol>