У меня есть серверная форма с элементами управления html и asp, я использовал атрибут oninvalid для вызова setCustomValidity, как показано ниже:
<form class="uk-form-stacked" id="wizard_advanced_form" runat="server">
<div class="uk-grid">
<div class="uk-width-medium-1-2 parsley-row">
<label for="lstNationalIDType">نوع الوثيقة</label>
<select id="lstNationalIDType" required runat="server" oninvalid="this.setCustomValidity('تاكد من اختيار نوع الوثيقة')" oninput="setCustomValidity('')" class="md-input" tabindex="1">
<option value=""></option>
</select>
</div>
<div class="uk-width-medium-1-2 parsley-row">
<label for="txtNationalID">رقم الوثيقة<span class="req">*</span></label>
<asp:TextBox ID="txtNationalID" class="md-input" oninvalid="this.setCustomValidity('تاكد من ادخال رقم الوثيقة')" oninput="setCustomValidity('')" runat="server" tabindex="2" MaxLength="10"></asp:TextBox>
</div>
</div>
<div class="uk-grid">
<div class="uk-width-1-1">
<button type="submit" id="btnAdd" runat="server" class="md-btn md-btn-primary" onserverclick="btnAdd_ServerClick">حفظ</button>
</div>
</div>
</form>
Когда я нажимаю кнопку сохранения и выбор или текстовое поле пусто, появляется сообщение проверки, но событие кнопки сработало и данные сохраняются с нулевыми значениями.
Итак, как я могу предотвратить событие на стороне кнопки сервера, когда появляется сообщение проверки?