Создание текстового поля в ASP.Net с уникальным идентификатором программно - PullRequest
1 голос
/ 25 января 2010

Мне интересно, какой лучший способ создать текстовые поля в моем цикле, чтобы идентификаторы были уникальными, а не просто "TextBox" для всех из них. Мне нужно сложить цену на основе цены за единицу и количества. Мои элементы загружаются из базы данных, поэтому их может быть любое количество, поэтому мне нужно создавать поля на лету. Я думал, может быть, массив полей может быть использован как в приложении формы, или это не правильный путь?

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

Вот мой код:

<table class="proposal" width="800">
        <tr>
            <th>Item</th>
            <th>Price per Unit</th>
            <th>Quantity</th>
            <th>Price</th>
        </tr>

        <% int x = 0; %>
        <% do
            {
        %>
        <tr>
            <td valign="top">
                <%= this.name[x] %><br />
                <%= this.desc[x] %></td>
            <td valign="top" align="right"><%= "$" + this.price[x] %></td>
            <td valign="top" align="center"><asp:TextBox ID="TextBox" runat="server" Width="75px"></asp:TextBox></td>
            <td valign="top" align="right"></td>
        </tr>

        <% x++;
           } while (x != this.y); 
        %>

    </table>

Ответы [ 2 ]

2 голосов
/ 25 января 2010

Нельзя создать динамический идентификатор для текстового поля asp.net. Не могли бы вы вместо этого использовать простые текстовые поля html <input type="text">? Тогда вы можете назначить любой идентификатор, который вы хотите.

Другой подход заключается в использовании элемента управления повторителем для генерации вашей таблицы. Каждый TextBox автоматически получит уникальный идентификатор. Если вам нужно получить идентификаторы в коде, то в методе ItemDataBound ретранслятора используйте FindControl, чтобы получить дескриптор TextBox и прочитать идентификаторы /

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