2009-10-19 6 views
0
<asp:TextBox id="txtComment" runat="server" Columns="50" MaxLength="50" /> 
<asp:TextBox id="txtComment2" runat="server" Columns="50" MaxLength="50" /> 

У меня есть два текстовых поля выше на веб-форме. Как я могу объединить их вместе и сделать их отображаемыми как одно текстовое поле?Как я могу создать два текстовых поля?

+3

Зачем вам это нужно? Похоже, это было бы вредно для удобства использования вашей формы. –

ответ

1

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

+0

Это прекрасно работало. input.secondTextbox { позиция: относительная; margin-left: 0px; border-left: нет; Слева: -5px; } – Hcabnettek

2

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

первое текстовое поле

border-right-width: 0 px 

Второй Текстовый блок

border-left-width: 0 px 
0
#txtComment, #txtComment2 {margin:0;padding:0; display-inline; border:none} 
+0

Подумайте о том, чтобы добавить некоторые объяснения относительно того, что вы делаете. Это завершает ответ и улучшает общее качество ответов здесь на SO. Благодаря! – Jon

0

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

<asp:TextBox id="txtComment" runat="server" Columns="50" MaxLength="50" Visible="false" /> 
<asp:TextBox id="txtComment2" runat="server" Columns="50" MaxLength="50" Visible="false"/> 
<asp:TextBox id="shownTxtComment" runat="server" Columns="100" MaxLength="100"/> 

private void splitComment() 
{ 
txtComment.Text = String.Left(shownTxtComment.Text, 49); //first 50 characters 
txtComment2.Text = String.Mid(shownTxtComment.Text, 50); //characters 51 thru end 
} 

вызов splitComment() в функции обратной передачи, и вы будете держать скрытые поля до актуальной на каждом постбэка.

Вы также можете рассмотреть возможность сделать то же самое на стороне клиента с javascript.

* более чистым подходом было бы удалить веб-элемент управления txtComment2 в целом, установить длину txtComment100 и просто разделить/обработать подстроки на сервере, но поскольку не совсем понятно, почему вы действительно хотите, чтобы два отдельных текстовых поля выглядели как одно текстовое поле, я не могу сказать, отвечает ли это вашим потребностям.

0

Думаю, мне любопытно, почему вы хотели бы это сделать. Как отметил Томас, похоже, это противоречит юзабилити. Вы ищете что-то вроде TextArea

Смежные вопросы