Подтвердить что ты не робот

Очистить все поля формы ASP.net

Есть ли простой способ reset всех полей в форме?

У меня есть около 100 элементов управления в моей форме asp.net и есть кнопки отправки и reset.

Как сделать все значения в полях null, когда пользователь нажимает кнопку reset?

У меня есть много раскрывающихся ящиков, текстовых полей, флажков.

4b9b3361

Ответ 1

Прокрутите все элементы управления на странице, и если элемент управления является типом TextBox, установите для свойства Text значение String.Empty

protected void ClearTextBoxes(Control p1)
{
    foreach (Control ctrl in p1.Controls)
    {
        if(ctrl is TextBox)
        {
             TextBox t = ctrl as TextBox;

             if(t != null)
             {
                  t.Text = String.Empty;
             }
        }
        else
       {
           if (ctrl.Controls.Count > 0)
           {
               ClearTextBoxes(ctrl);
           }
        }
    }
}

Затем, чтобы называть это в событии click следующим образом:

 ClearTextBoxes(Page);

Ответ 2

Добавьте это на серверный обработчик кнопки отмены:

Response.Redirect("~/mypage.aspx", true);

Ответ 3

Попробуйте добавить:

<input type="reset" value="Clear" />

в вашу форму.

Ответ 4

Вы можете использовать событие OnClientClick. Это будет reset весь элемент управления, присутствующий в форме. OnClientClick="this.form.reset();return false;"

Смотрите код:

<asp:Button ID="Reset_Button" runat="server" Text="Reset" 
    Width="81px" OnClientClick="this.form.reset();return false;" />

Ответ 5

Лучший вариант с моей стороны -

Response.Redirect(Request.RawUrl);

Просто добавьте этот код в кнопку отмены или reset вашего элемента управления asp.net.

Ответ 6

Если вы используете объект asp.net formview, просто используйте myFormView.DataBind(); в вашем событии click reset.

Ответ 7

Или, если вы используете Angular.

Добавьте это в свою кнопку на странице cshtml:

<input type="button" value="Cancel" id="cancel" ng-click="cancel();" />

И это в ваш .js файл:

$scope.cancel = function () {
    if (!$('form').dirtyForms('isDirty')) {
        $('form').dirtyForms('setClean');
    }
    else {
        $('form').dirtyForms('isDirty', true);
    }
     var that = this;
    var method = that.getUrl('CONTROLLER', 'ACTION', 'id', 'querystring');
    window.location = method;