2016-08-02 19 views
0

タグをasp.netコードビハインドからHTML文書にいくつか追加しようとしています。私はAdding Html from Code Behind in Asp.netを見て、それは解決策だと思われますが、どのように正確にそれがhtmlの追加を開始するのかを決定する方法をdivcontrol.Controls.Addがわかりません。私が知っている限り、それはhtmlの終わりです。私もWrite Html Markup from code behind in asp.netを見つけましたが、私はそれを使う方法もわかりません。asp.netからhtmlを変更して追加してください

ここでは私が使用しているhtmlです。これは私がに使用するコードです

<img alt="img1" 
    src="images/thumbs/tile1.jpg" 
    data-image="images/big/tile1.jpg" 
    style="display:none"/> 
</a> 

:どのように私はまた、これは私が<div id="gallery">タグの間に追加する必要があります<img>タグです?:

<!DOCTYPE html> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 
<title>Gallery</title> 
    <script type='text/javascript' src='/jquery-11.0.min.js'></script> 
    <script type='text/javascript' src='theme-tiles.js'></script> 
</head> 
<body> 
    <form id="form1" runat="server"> 
    <h2>Tiles - Justified</h2> 
    <div id="gallery" style="display:none;"> 
    </div> 

    <script type="text/javascript"> 

     jQuery(document).ready(function() { 

      jQuery("#gallery").gallery({ 
       tiles_type: "justified" 
      }); 

     }); 

    </script> 
    </form> 
</body> 

</html> 

が含まれているimgタグを追加することができますhtmlを追加します。

HtmlGenericControl divcontrol = new HtmlGenericControl(); 
divcontrol.Attributes["class"] = "sxro sx1co"; 
divcontrol.TagName = "div"; 
pnlUserSearch.Controls.Add(divcontrol); 
Label question = new Label(); 
divcontrol.Controls.Add(question); // add to the new div, not to the panel 

答えて

0

あなたは、クライアント側のHTML(いないサーバーコントロール)を作成している場合は、あなただけのを作成することができますは、次のように:

その後
<div id="gallery" style="display:none;">  
    <asp:Literal runat="server" ID="MyLiteral" /> 
</div> 

、あなたのコードビハインドで、私は(。何もしゃれが意図していない)文字通りあなたの質問に答えるよ達成するためのより良い/他の方法があるかもしれません

MyLiteral.Text = "<whatever html you want>" 

を設定しました最終目標「通常の」クライアントHTMLとウェブフォームを混在させると少し混乱することがあります。 Webformsはあなたがすべてのことをやりたいと思っています。

コンテナdiv(gallery)が代わりにサーバーコントロールである場合は、もっと意味があります。複数の画像を追加する場合は、Repeaterが必要です。

本当に正直言って、開発の道を遠く離れすぎていないのであれば、代わりにASP.NET MVCを見てみることをお勧めします。


別のアプローチ:

ただ、直接マークアップにおける、サーバーコントロールとしてあなたのイメージそのものを追加します。あなたはそれを表示したい場合は、あなたのコードビハインドで

<div id="gallery" style="display:none;">  
    <img runat="server" ID="MyImage" Visible="False"/> 
</div> 

MyImage.Src = "/image url"; 
MyImage.Visible = true; 
関連する問題