2013-12-12 5 views
0

Я хотел бы обработать функцию javascript до того, как пользователь полностью представит форму, и браузер ждет результата. В частности, я хочу только наложить страницу на серый слой и отобразить вращающийся объект во время обработки запроса. Результат процесса будет отображаться на новой странице.обрабатывать функцию javascript перед отправкой формы

Код ниже не удается, переходит к следующей странице imediately

<script> function showWait() 
    { $('#waitDiv').prepend('<center><img id="theImg" src="wait.gif"/></center>'); 
    return true; 
    } 
</script> 
<form enctype="multipart/form-data" action="uploadPDBFile.php" method="post" onSubmit='javascript:showWait()'> 
    <input type="text" name='name1' placeholder="1dfj"/><br/> 
    <input type="text" name='chain' placeholder="I"/><br/> 
    <input type="hidden" name="upload" value="false" /> <input type="submit" value="Run"/> 
</form> 
+0

Вам нужно [Ajax] (HTTP://api.jquery.com/category/ajax/). – mdesdev

ответ

0

Использование onSubmit = "возвращение validationFn()"

<html> 
<script> 
function validate() 
{ 
var username = document.forms['login_form']['username'].value; 
var password = document.forms['login_form']['password'].value; 
var Login = document.forms['login_form']['Login'].value; 
//Processing data here 
if(username.length==0) 
{ 
    return false; 
} 
if(password.length==0) 
{ 
    return false; 
} 
var return_value = true; 
var patt1=new RegExp("%"); 
var patt2=new RegExp("9"); 
// And so on........ 
if((patt1.test(username))||(patt1.test(password))) 
{ 
    return_value = false; 
} 
if((patt2.test(username))||(patt2.test(password))) 
{ 
    return_value = false; 
    //alert('null'); 
} 

if(return_value==false) 
{ 
    alert('Invalid characters in username or password'); 
    return return_value; 
} 
} 
</script> 

<body> 
<form name='login_form' action='1.php' method='POST' onsubmit='return validate()'> 
       <input type='text' name='username' placeholder='Username'/><br> 
       <input type='password' name='password' placeholder='Password'/><br> 
       <input type='submit' name='Login' value='Submit' style='margin-top:12px;margin-left:50px;'/> 
    </form> 
</body> 
</html> 
+0

Я хочу отобразить изображение перед отправкой формы. –

+0

function validate() {document.getElementsByTagName ('body') [0] .innerHTML = "

"; return true;} – user2227606

+0

см. мое редактирование исходного сообщения выше –

Смежные вопросы