У меня есть пользовательский контроль в ASP.Net с кнопкой, которую я использую для обратной передачи. Эта кнопка также имеет некоторую проверку Javascript, которая выполняется перед обработкой события.
Сегодня я попытался отправить обратно на другой URL, установив свойство кнопки PostBackURL. Но это не сработало, и страница продолжала публиковаться. Поэтому я провел некоторое расследование и обнаружил, что.
- Пост обратно на другой URL реализован через Javascript в ASP.Net.
Если я продолжу вызов моей функции проверки
OnClientClick = "return validate ()"
Тогда пост обратно не происходит.
- Если я удалю вызов функции проверки, обратная передача работает нормально.
Так выглядит разметка кнопки при включенной проверке.
<input type="submit" name="ctl00$cphMain$pra1$btnSubmit" value="Submit" onclick="return validate();WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions("ctl00$cphMain$pra1$btnSubmit", "", false, "", "Result.aspx", false, false))" id="ctl00_cphMain_pra1_btnSubmit" style="width:80px;" />
Без проверки
<input type="submit" name="ctl00$cphMain$pra1$btnSubmit" value="Submit" onclick="javascript:WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions("ctl00$cphMain$pra1$btnSubmit", "", false, "", "Result.aspx", false, false))" id="ctl00_cphMain_pra1_btnSubmit" style="width:80px;" />
Вы заметите, что вызов функции return validate () отсутствует, и это все меняет.
Как мне заставить это работать?