Я столкнулся с проблемой, я должен заполнить TextArea программно. Я использовал следующий код.
System.Windows.Forms.HtmlElement reviewText = myDoc.GetElementById("review-text");
reviewText.InnerText = Program.mainForm.richTextBox1.Text.Trim();
Это отлично работает и устанавливает текст в элементе управления TextArea. Проблема, с которой я сталкиваюсь, заключается в том, что этот текст выглядит легким. Когда пользователь нажимает на этот текст, он исчезает. Это происходит только при первом нажатии.
Итак, я попробовал следующий код, чтобы сначала щелкнуть это поле, а затем установить текст.
reviewText.InvokeMember("click");
А затем попытался установить текст в TextArea, но получил то же поведение.
Я покопался в источнике страницы и обнаружил некоторый скрипт, связанный с этой TextArea.
Источник TextArea
<textarea onkeyup="javascript:yelp.ui.widget.countChars(this.form.comment,5000);" onkeydown="javascript:yelp.ui.widget.countChars(this.form.comment,5000);" name="comment" id="review-text" class="form400" rows="8" cols="40" style="height: 86px;"></textarea>
Скрипт, связанный с TextArea
<script type="text/javascript">
var bizName = "Geary Club";
if ($('review-text'))
{
new yelp.ui.widget.DefaultValueTextField($('review-text'), 'Please write here');
}
Кто-нибудь подскажет мне, как вставить текст в этот элемент управления TextArea?