Добавить текстовое поле с помощью кнопки динамического изображения на панели - PullRequest
0 голосов
/ 01 ноября 2010

У меня проблема, кажется, я все время спотыкаюсь, у меня есть выпадающий список, и вы можете выбрать число, которое создает x количество текстовых полей с кнопками изображений, для обзора, для создания которых используются кнопки изображений "Подответы ", чтобы они могли иметь ответы на ответы, поэтому мой вопрос мне нужен, когда они нажимают кнопку изображения, чтобы создать текстовое поле под оригинальным текстовым полем, вот код.

for (Int32 i = 1; i <= NumberOfAnwsers; i++)
{
Literal l1 = new Literal();
l1.Text = "<tr><td>Answer " + i + " text.</td><td>";

TextBox tb = new TextBox();
tb.ID = "TextBoxAnswer" + i;
tb.EnableViewState = false;
tb.Width = 300;

Literal l3 = new Literal();
l3.Text = "</td><td>";

Literal l2 = new Literal();
l2.Text = "</td></tr>";

RadColorPicker CPI = new RadColorPicker();
CPI.PaletteModes = PaletteModes.WebPalette;
CPI.ID = "RadColorPicker" + i;
CPI.ShowIcon = true;
CPI.SelectedColor = System.Drawing.Color.Black;

ImageButton IBVideo = new ImageButton();
IBVideo.ID = "IBVideo" + i;
IBVideo.ImageUrl = "/images/video-icon.jpg";
IBVideo.ToolTip = "Add Video";
IBVideo.Height = 20;
IBVideo.Width = 20;

ImageButton IBAdd = new ImageButton();
IBAdd.ID = "IBAdd" + i;
IBAdd.ImageUrl = "/images/add-icon.png";
IBAdd.ToolTip = "Add Sub-Answers";
//IBAdd.OnClientClick = "showDialog(" + i + ");return false;";
IBAdd.Height = 20;
IBAdd.Width = 20;

//Add Textbox

PanelAnswersToQuestions.Controls.Add(l1);
PanelAnswersToQuestions.Controls.Add(tb);
PanelAnswersToQuestions.Controls.Add(l3);
PanelAnswersToQuestions.Controls.Add(CPI);
PanelAnswersToQuestions.Controls.Add(IBVideo);
PanelAnswersToQuestions.Controls.Add(IBAdd);
PanelAnswersToQuestions.Controls.Add(l2);
}

Как вы можете видетьЯ просто добавляю элементы управления на панель, мне нужно знать, когда будет запущен этот ImageBUtton, я могу добавить текстовое поле, и в этом случае это может быть больше, чем просто одно текстовое поле.

Надеюсь, это понятно, но дляпо какой-то причине я не думаю, что это ... извините.

Ответы [ 2 ]

0 голосов
/ 03 ноября 2010

Я добавил radwindow и выскакиваю, что при отправке данных партнеру через javascript, который создал для меня новую проблему, я не могу в javascript, кажется, найти динамически созданное скрытое поле

function OnClientClose(radWindow) {
        var oWnd = $find("<%=RadWindowAddSubAnswer.ClientID%>");
        var SubAnswerValues = oWnd.get_contentFrame().contentWindow.document.forms(0).HiddenFieldSubAnswers.value;
        alert(SubAnswerValues);
        var AnswerID = oWnd.get_contentFrame().contentWindow.document.forms(0).HiddenFieldAnswerID.value;
        alert(AnswerID);
        var HiddenName = "HiddenFieldSubAnswers" + AnswerID;
        alert(HiddenName);
        document.getElementById(HiddenName).value = SubAnswerValues; 
        $get("DivSubAnswers" + AnswerID).innerHTML = SubAnswerValues;
    }

«document.getElementById (HiddenName) .value = SubAnswerValues;» кажется, никогда не будет найден, я также попытался $ get (HiddenName) .value = SubAnswerValues; это, кажется, не работает, либо оба возвращаются как нуль, как для кода за его: HiddenField HFSubAnswers = new HiddenField (); HFSubAnswers.ID = "HiddenFieldSubAnswers" + i; HFSubAnswers.Value = "0";

0 голосов
/ 02 ноября 2010

Я не уверен, правильно ли я понял ваш вопрос, но если вам нужно динамически добавить элементы управления на страницу, вот что я могу сказать.

Перед добавлением элемента управления, я думаю, вам нужно найти элемент управления, где вынеобходимо добавить его, добавить элемент управления, затем назначить свойства.

PlaceHolder myPlaceHolder = (PlaceHolder)Page.FindControl("PlaceHolder1");

myPlaceHolder.Controls.Add(myButton);
myButton.Text = "Hello World";

Для более подробного ознакомления перейдите сюда http://anyrest.wordpress.com/2010/04/06/dynamically-removing-controls-in-a-parent-page-from-a-child-control/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...