Самый простой способ - просто вернуть false в обработчик событий onSubmit
в элементе формы.Предположительно, в другом месте формы у вас есть кнопка, которую вы хотите активировать при отправке формы.На этой кнопке вы можете добавить обработчик onclick
, который вызывает form.submit ().Когда вы отправляете форму программным способом, обработчик onSubmit
не запускается.
Может выглядеть примерно так:
<form id="myform" method="post" action="http://yourserver/page" onSubmit="return false;">
<input id="myfile" type="file" name="file"/>
<input type="button" value="upload" onClick="submitForm();" />
</form>
<script type="text/javascript">
function submitForm()
{
// if no file, don't submit
var file = document.getElementById("myfile");
if (file.value.length == 0) return;
var form = document.getElementById("myform");
form.submit();
}