2017-12-13 33 views
1

Labelをクリックすると、チェックボックスにCheckBoxが表示されるように、ラベルにラップされたチェックボックスを表示します。私はまた、Labelの上にカーソルを置いてからディプレイするためにdescエリアが必要です。これらも動的で、コードの背後に作成する必要があります。私はこれまでの2つの方法があり、descAreaはC#ASP.NETダイナミックに追加されたラベルコントロールで動的に追加されたCheckBoxコントロールをラップします

caPanel.Controls.Add(new LiteralControl(
       "<div class='col-md-6'>"+ 
        "<div id='AButton" + t.Rows[i]["ID"].ToString() + "' class='caLabel' onmouseenter='slideDescriptionDown(this.id);' onmouseleave='slideDescriptionDown(this.id);' >" + 
         "<label>")); 

          CheckBox aCheckBox = new CheckBox(); 
          aCheckBox.ID = "checkbox" + t.Rows[i]["ID"].ToString(); 
          caPanel.Controls.Add(aCheckBox); 

       ca.Controls.Add(new LiteralControl("&nbsp;&nbsp;" + t.Rows[i]["NAME"].ToString() + 
         "</label>"+ 
        "</div>"+ 
        "<div class='alert alert-info aDescription' id='descArea" + t.Rows[i]["ID"].ToString() + "'>" + 
         "<span id='desc" + t.Rows[i]["CA_ID"].ToString() + "'>" + t.Rows[i]["Description"].ToString() + "</span>" + 
        "</div>"+ 
       "</div>")); 

を下にスライドさせるために、自分の問題との両方...

このオプションは、この1つは許可されていませんJS関数が呼び出されることを許可していませんを確認するにはLabelをクリックしてください。私は、コードを検査しLabelspan

  caPanel.Controls.Add(new LiteralControl("<div class='row caSectionRow'>" + 
       "<div class='col-md-6'>")); 

        Label aName = new Label(); 
        aName.ID = "AButton" + t.Rows[i]["ID"].ToString(); 
        aName.Attributes.Add("class", "caLabel"); 
        aName.Attributes.Add("onmouseenter", "slideDescriptionDown(this.id);"); 
        aName.Attributes.Add("onmouseleave", "slideDescriptionDown(this.id);"); 
        aName.Text = "&nbsp;&nbsp;" + t.Rows[i]["NAME"].ToString(); 

        CheckBox aCheckBox = new CheckBox(); 
        aCheckBox.ID = "checkbox" + t.Rows[i]["ID"].ToString(); 

       caPanel.Controls.Add(aCheckBox); 
       caPanel.Controls.Add(aName); 

       caPanel.Controls.Add(new LiteralControl(
        "<div class='alert alert-info aDescription' id='descArea" + t.Rows[i]["ID"].ToString() + "'>" + 
         "<span id='desc" + t.Rows[i]["ID"].ToString() + "'>" + t.Rows[i]["Description"].ToString() + "</span>" + 
        "</div>" + 
       "</div>")); 

答えて

0

として表示され、私は私が提案最初のオプションためdescAreaを表示しようとしたときにエラーがJS関数自体の中に嘘をつきました。私は正しいdescAreaのIDを持っていませんでした。すべてのコントロールがASP.NETに持つ必要があるUniqueIDプロパティを満たすために、MainContent_aContent_がプリペンドされていました。

When is the ctl00 prefix added?

https://msdn.microsoft.com/en-us/library/1d04y8ss(v=vs.100).ASPX

関連する問題