Я бы использовал поле шаблона, а не ограниченное поле.
И не забывайте, что когда вы устанавливаете видимость в false на веб-элементах управления, они не отображаются в ответе
<asp:templatefield>
<itemtemplate>
<span class='myhide'><%# eval("columnname") %></span>
</itemtemplate>
</asp:templatefield>
Кроме того, ретранслятор даст вам точный контроль над отображаемым HTML, который может дать Вы добиваетесь лучших результатов с тем, что вы пытаетесь сделать.
В отличие от других ответов, return false
- это только часть ответа. Рассмотрим сценарий, в котором ошибка JS возникает до оператора return ...
html
<form onsubmit="return mySubmitFunction(event)">
...
</form>
скрипт
function mySubmitFunction()
{
someBug()
return false;
}
, возвращающий false
здесь, не будет выполнен, и форма будет отправлена в любом случае . Вы также должны вызвать preventDefault
, чтобы предотвратить действие формы по умолчанию для отправки форм Ajax.
function mySubmitFunction(e) {
e.preventDefault();
someBug();
return false;
}
В этом случае даже с ошибкой форма не будет отправлена!
В качестве альтернативы можно использовать блок try ... catch
.
function mySubmit(e) {
e.preventDefault();
try {
someBug();
} catch (e) {
throw new Error(e.message);
}
return false;
}
Вот мой ответ:
<form onsubmit="event.preventDefault();searchOrder(event);">
...
</form>
<script>
const searchOrder = e => {
e.preventDefault();
const name = e.target.name.value;
renderSearching();
return false;
}
</script>
Я добавляю event.preventDefault();
в onsubmit
, и это работает.
Вы можете использовать встроенное событие onsubmit
, как это
<form onsubmit="alert('stop submit'); return false;" >
Или
<script>
function toSubmit(){
alert('I will not submit');
return false;
}
</script>
<form onsubmit="return toSubmit();" >
Теперь это может быть не очень хорошей идеей при создании больших проектов. Возможно, вам понадобится использовать прослушиватели событий.
Пожалуйста, подробнее о встроенных событиях и прослушивателях событий (addEventListener и attachEvent IE) здесь . Потому что я не могу объяснить это больше, чем Крис Бейкер .
Оба верны, но ни один из них не является «лучшим» сам по себе, и, возможно, причина, по которой разработчик решил использовать оба подхода.
var form = document.getElementById("idOfForm");
form.onsubmit = function() {
return false;
}