Существует проблема с поиском динамического элемента управления на странице. Динамический контроль создается каждый раз, когда пользователь нажимает кнопку. Кнопка вызывает следующую функцию JavaScript и создает новые компоненты.Создание и поиск динамических элементов управления на странице
<script type="text/javascript">
var uploadCount = 1;
function addFileInput(fName) {
var only_file_name = fName.replace(/^.*[\\\/]/, '');
var $div = $('<div />', {runat: 'server'});
var $cbox = $('<input />', { type: 'checkbox', id: 'attachement' + uploadCount, value: fName, checked: "true", runat: 'server'}).addClass;
var $label = $('<label />', { 'for': 'attachement' + uploadCount, text: only_file_name });
$div.append($cbox);
$div.append($label);
$('#newAttachment').append($div);
$("#uploadCountValue").prop("value", uploadCount);
uploadCount++;
}
</script>
новыйДоставка раздела DIV на странице.
<div id="newAttachement" runat="server" />
Раздел DIV расположен внутри секции. Проблема заключается в том, что пользователь нажимает кнопку в форме, которую я не могу найти динамически созданных компонентов. Следующий код показывает, как я пытаюсь найти компоненты:
for (int i = 1; i <= Convert.ToInt32(uploadCountValue.Value); i++)
{
if (RecursiveFind(newAttachement, "attachement" + i) != null)
{
... to do something
}
}
public Control RecursiveFind(Control ParentCntl, string NameToSearch)
{
if (ParentCntl.ID == NameToSearch)
return ParentCntl;
foreach (Control ChildCntl in ParentCntl.Controls)
{
Control ResultCntl = RecursiveFind(ChildCntl, NameToSearch);
if (ResultCntl != null)
return ResultCntl;
}
return null;
}
я обнаружил, что элементы управления рассчитывать значение всегда равно нулю, несмотря на то динамические компоненты там. Я был бы рад получить любую помощь от нас. Благодарю.
создать динамический контроль в фоновом коде на обратной стороне кнопки. Не могли бы вы показать мне простой пример, пожалуйста? – chudnikau
http://support.microsoft.com/kb/317515 – Abhitalks
> вам нужно изменить свою логику. создайте динамический контроль в коде для обратной передачи по кнопке. Это должно быть похоже на gmail при прикреплении файлов к новой букве. Вероятно, gmail использует ajax при перезагрузке страницы. – chudnikau