2012-03-09 8 views
1

私は次のように私のリストがあると私はそれを動的に構築しようとしている動的リストを移入し、私がボタンにカーソルを合わせると転送リスト

<div class="invite"> 
    <asp:Button ID="Button1" runat="server" Text="Invite" CssClass="invite-link"/> 
    <div class="invite-drop"> 
     <div class="holder"> 
      <ul runat="server"> 
       <li> 
        <a href="#"> 
         <img src="images/img3.png" width="22" height="22" alt="image description" /> 
         <span>Chris Robin</span> 
        </a> 
       </li> 
       <li> 
        <a href="#"> 
         <img src="images/img3.png" width="22" height="22" alt="image description" /> 
         <span>Danny Defoee</span> 
        </a> 
       </li> 
       <li> 
        <a href="#"> 
         <img src="images/img3.png" width="22" height="22" alt="image description" /> 
         <span>Gustav Lee</span> 
        </a> 
       </li> 
       <li> 
        <a href="#"> 
         <img src="images/img3.png" width="22" height="22" alt="image description" /> 
         <span>Eric Rees</span> 
        </a> 
       </li> 
      </ul> 
      <a class="select" href="#">Or select friend</a> 
     </div> 
    </div> 
</div> 

リストを表示したい:

HtmlGenericControl list = new HtmlGenericControl("ul"); 
for (int i = 0; i < 3; i++) 
{ 
    HtmlGenericControl listItem = new HtmlGenericControl("li"); 
    HtmlGenericControl anchor = new HtmlGenericControl("a"); 
    Image im = new Image(); 
    //im.ImageUrl = ds.Tables[0].Rows[1].ItemArray.ToString(); 
    anchor.Attributes.Add("href", ""); 
    anchor.Controls.Add(im); 
    anchor.InnerText = "TabX"; 
} 

EDIT:

enter image description here

コードビハインドからリストを転送するのに成功しましたが、フォーマットが正しくない場合は、画像をもう1つ下に表示したい

私の質問はどのようにaspxデザインページに転送しますか?そして

答えて

5

は、ページ上で動的に作成されたサーバ側からulPageにコントロールコレクションまたはどこかを追加し、それがCSSまたはインラインスタイルdisplay:noneを通じて、デフォルトでは非表示にする助けてくださいホバーイベントに表示。 idまたはclassulを指定すると、クライアント側で要素を見つけるのに役立ちます。

クライアントでは、$('ul.classname')または$('#listId)を使用して見つけて、ホバーイベントでshow()を使用して表示し、要件に応じて配置します。

コードに基づいています。

は、リストコントロールにアンカーを追加する必要がありますforループにul

<ul ID="list" runat="server"> 

ノートにIDを与えます。

for (int i = 0; i < 3; i++) 
    { 
     HtmlGenericControl listItem = new HtmlGenericControl("li"); 
     HtmlGenericControl anchor = new HtmlGenericControl("a"); 
     Image im = new Image(); 
     //im.ImageUrl = ds.Tables[0].Rows[1].ItemArray.ToString(); 
     anchor.Attributes.Add("href", ""); 
     anchor.Controls.Add(im); 
     anchor.InnerText = "TabX"; 

     list.Controls.Add(anchor); 
    } 

のJs

$('.invite-link').hover(function(){ 
    $('#list').show(); 
}, function(){ 
    $('#list').hide(); 
}); 
+0

+1、それはあまりにも私を打ち負かします!ここに例があります - http://jsfiddle.net/shanabus/uCMxf/ – shanabus

+0

ボタンの上にカーソルを置くと、tabxが複数回表示されます。その代わりにリストに表示される名前を表示する方法があります – vini

+0

表示されますあなたがサーバー側からレンダリングしたもの。 – ShankarSangoli