Вызывать пользовательскую функцию проверки на стороне клиента после WebForm_OnSubmit? .СЕТЬ - PullRequest
2 голосов
/ 01 июля 2011

Я хочу запустить простую функцию JS после того, как мои элементы управления валидатора .NET запустят свой javascript.Моим значением onsubmit является javascript: return WebForm_OnSubmit () ;, которое создается автоматически, и я не могу его изменить.

Правильно ли я считаю, что мне нужно просто добавить функцию в это поле, чтобы она заработала?Кроме того, моя форма проверяется после изменения поля (не после того, как форма была отправлена), и это здорово, но есть ли настройка для включения / выключения?*

1 Ответ

0 голосов
/ 26 июля 2018

Хотя это поздний ответ, который я опубликую на будущее.
Если ваша страница aspx - простая страница (без ContentPage, поэтому нет MasterPage), вы можете добавить функцию onsubmit непосредственно в разметку:

<form ... onsubmit="return myCustomValidation();"... >

"WebForm_OnSubmit()" будет выполнено первым, а затем, если проверка в порядке "myCustomValidation()" будет выполнено.

Если ваша страница aspx является ContentPage (поэтому она имеет MasterPage), у вас нет доступа кРазметка для того, чтобы сделать так же, как и раньше.Вы можете установить "myCustomValidation()" для выполнения после "WebForm_OnSubmit()" в коде:

Private Sub Page_PreRenderComplete(sender As Object, e As EventArgs) Handles Me.PreRenderComplete
    If Not Page.ClientScript.IsOnSubmitStatementRegistered(Me.GetType, "aspxMyCustomValidation") Then
        Page.ClientScript.RegisterOnSubmitStatement(Me.GetType, "aspxMyCustomValidation", "myCustomValidation()")
    End If
End Sub

Ключ должен установить этот код в событии "PreRenderComplete", а не в событии "Load", чтобы выполнить"myCustomValidation()" после "WebForm_OnSubmit()".

...