Page_ClientValidate проверяет многократно.

Для синхронизированного файла p4 have является каноническим / простейшим способом определения локального пути по заданному пути депо. p4 fstat также будет работать.

Для файла, который еще не был синхронизирован, p4 have ничего не вернет, но p4 where покажет вам, где сопоставлен любой заданный путь.

Для случаев, когда файл был синхронизирован, но с тех пор отображение изменилось, p4 have и p4 where покажут вам две разные вещи (have показывает путь, по которому у вас есть файл в настоящее время, where показывает куда он пойдет при следующей синхронизации).

16
задан goodeye 16 January 2013 в 20:30
поделиться

6 ответов

Нет необходимости вручную вызывать функцию Page_ClientValidate, если только вы не хотите выполнять проверку вне попытки обратной передачи.

Установите кнопки Причины проверки на true. Это запустит проверку.

2
ответ дан 30 November 2019 в 16:50
поделиться

Удалите событие нажатия кнопки, которое, по-моему, вызывает повторную проверку.

1
ответ дан 30 November 2019 в 16:50
поделиться

удалить событие onclientclick кнопки, в этом нет необходимости

0
ответ дан 30 November 2019 в 16:50
поделиться

Эй, там. Поэтому из всего, что вы должны потерять валидационную группу = «контактную группу» из кнопки, потому что наличие валидационной группы в нем сначала позвонит проверку на странице, то событие OnClientClick, которое содержит проверку Validate Функция, которая снова будет вызывать проверку страницы.

Затем вы должны пройти функцию Validation Group «ContactGroup» на функцию Page_ClientValidate (), чтобы она знала, какие элементы управления для проверки, потому что просто вызывая страница_clientValidate () будет проверять все элементы управления независимо от их группы валидации (и это может отобразить сообщение о проверке Один раз, в зависимости от того, сколько у вас есть валидационные группы).

Короче говорят что-то подобное:

function validate() //javascript function
{
    if (typeof(Page_ClientValidate) == 'function') 
    {
        var isPageValid = Page_ClientValidate('ContactGroup');
        if(isPageValid)
        {
          //your custom code
        }
    }
}    

<asp:textbox id="txtMyBox" runat="server"/>
<asp:requiredFieldValidator Id="rfv1" runat="server" ControlToValidate="txtMyBox"
ValidationGroup="ContactGroup" ErrorMessage="Bad!"/>

<asp:Button ID="btn1" runat="server" OnClientClick="validate()" Text="button"/>

<asp:ValidationSummary ID="ValidationSummary1" runat="server" DisplayMode="List" 
                    ShowMessageBox="true" ShowSummary="false" ValidationGroup="ContactGroup" />
5
ответ дан 30 November 2019 в 16:50
поделиться

Просто верните ложь от функции и измените onclientClick, как показано ниже:

<asp:Button ID="btn1" runat="server" OnClientClick="return validate();" Text="button" 
                        ValidationGroup="ContactGroup" /> 

        function validate() //javascript function   
        {   
            if (typeof(Page_ClientValidate) == 'function')    
            {   
                var isPageValid = Page_ClientValidate();   
                if(isPageValid)   
                {   
                }   
            }   
        return false;

} 
3
ответ дан 30 November 2019 в 16:50
поделиться

Проблема в том, что функция Page_ClientValidate принимает входной параметр, если вы не указываете входной параметр, то validationsummary срабатывает один раз на имя группы.

В вашем случае функция срабатывает дважды: один раз для имени группы="ContactGroup" и другой раз для имени группы=""

вам следует изменить

var isPageValid = Page_ClientValidate();

на

var isPageValid = Page_ClientValidate('');

если вы не хотите указывать ValidationGroup, или если вы хотите указать имя группы, тогда вам нужно вызвать Page_ClientValidate следующим образом:

var isPageValid = Page_ClientValidate('ContactGroup');
23
ответ дан 30 November 2019 в 16:50
поделиться
Другие вопросы по тегам:

Похожие вопросы: