OnclientClick - это клиент -скрипт, который обычно используется для использования JavaScript, запуска в клиенте, то есть, то есть и выполнять сразу после нажатия.
OnClick-это функция обработки событий на стороне сервера, которая использует C# или VB.net для работы на стороне сервера, то есть IIS. Нажав кнопку, выполните обратную силу, а затем запустите ее.
Если вы хотите сначала позвонить в OnclientClick и не звонить в Onclick Event, вы должны вернуть False в OnclientClick Event. Если вы не вернете False, после выполнения OnclientClick вы продолжите звонить в Onclick Meat!
Метод реализации выглядит следующим образом:
<ASP: Button ID = "btn_save" runat = "server" text = "Сохранить" cssclass = "button_bak" onclientClick = "return wayempty ();" Onclick = "btn_save_click"/> // реализация Javascript выглядит следующим образом: <script language = "javascript" type = "text/javascript"> emptty () {// alert ("Информация о KPI не может быть просто!"); Emptflag = false; var kpiname = Document.getElementById ("<%= txt_kpiname.clientid%>"). Value; var jobgoal = document.getElementById ("<%= txt_jobgoal.clientid%>"). Value; var Wews = document.getElement ("<%= txt_weight.clientid%>"). document.getElementById ("<%= txt_standard.clientid%>"). Value; if (kpiname == "" && jobgoal == "" && wews == "" && standard == "") {emptflag = true;} if (emptflag) {alert ("kpi information не может быть все пустой!");Если onclientClick = "return tomempty ();" не имеет возврата, даже если вернуть False в JavaScript, Onclick все равно будет выполняться!
Вот описание разницы между OnclientClick и Onclick
Фактически, иногда требуется двойная проверка между клиентом и сервером. Почему ты так говоришь? Бигуо сказал, что когда мы передаем JS -проверку на клиенте, мы можем ввести только буквы и цифры, и у нас не может быть специальных персонажей! Обычно проблем нет, но всегда есть стыд, что люди пробуют все средства, чтобы «делать разрушение», и в настоящее время необходима двойная проверка! Через это, это означает, что и сервер, и клиент проверяются!
Например: кнопка имеет: onclick Event и onclientClick Attributes, первое, как правило, является событием Click на сервере! Последнее - это событие на клиенте!
Давайте сделаем тест! Добавьте следующий код на страницу default.aspx!
<script language = "javascript" type = "text/javascript"> function buttonclick () {alert ("I - клиент Click Event"); вернуть false; } </script>Код страницы:
<form id = "form1" runat = "server"> <div> <asp: button id = "button1" runat = "server" text = "Некоторые кнопки являются элементами управления сервером, а событие OnClientClick используется по умолчанию. Пожалуйста, отключите опыт работы с js onclick =" button1_click "OnclientClick =" ButtonClick (); "); /> <asp: label id = "label1" runat = "server" text = ""> </asp: label> </div> </form>
Код файла CS:
Protected void button1_click (Object Sender, EventArgs e) {this.label1.text = "I Am Server Click Event";}Все управляют этим и видят, что это за эффект? Вы можете обнаружить, что появляется только код в JS! Правильно, это именно тот эффект, который мы хотим. Используйте вернуть False, чтобы «заблокировать» проверку сервера! Каковы преимущества? Вам просто не нужно обновлять страницу!