2013-11-25 14 views
0

的问题,如果我在除了IE以外的浏览器上运行该脚本,它提交一次警报的形式,但如果我尝试在IE浏览器,它提醒了两次,JavaScript警告两次的问题与IE PHP

可能是什么原因 ?

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<?php 
if(isset($_POST['btn_submit']) && $_POST['btn_submit'] == 'Submit') 
{ 
    ?> 
     <script language="javascript"> 
     alert('form submitted'); 
     </script>  
    <?php 
} 
?> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title>Untitled Document</title> 
</head> 
<body> 
<form id="name" method="post"> 
    <input type="file"/> 
    <input type="submit" name="btn_submit" value="Submit" /> 
</form> 
</body> 
</html> 

编辑:我试过在IE7和IE8

+0

您是否遗漏了任何部分?这是(i)框架的一部分吗?是否涉及Ajax? –

回答

2

这个代码在脚本的末尾试试你的JS:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title>Untitled Document</title> 
</head> 
<body> 
<form id="name" method="post"> 
    <input type="file"/> 
    <input type="submit" name="btn_submit" value="Submit" /> 
</form> 
</body> 
</html> 
<?php 
if(isset($_POST['btn_submit']) && $_POST['btn_submit'] == 'Submit') 
{ 
    ?> 
     <script language="javascript"> 
     alert('form submitted'); 
     </script>  
    <?php 
} 
?> 
+0

这是怎么回答这个问题'为什么它警告两次?' –

0

尝试这种方式,这样做的它有点清洁方法它。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
    <html xmlns="http://www.w3.org/1999/xhtml"> 
    <head> 
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
    <title>Untitled Document</title> 
    <script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script> 
    <script type="text/javascript"> 
    $(document).ready(function() { 
    $('#name').submit(function(event){ 
     event.preventDefault(); 
     // Do other stuff 
     alert('form submitted'); 
    }); 
    }); 
    </script> 
    </head> 
    <body> 
    <form id="name" method="post"> 
     <input type="file"/> 
     <input type="submit" name="btn_submit" value="Submit" /> 
    </form> 
    </body> 
    </html> 
+0

这是如何回答这个问题'为什么它会提醒两次?' –

+0

event.preventDefault();为了防止表单被自己调用,但共享的代码是一个如何以其他方式使用它的想法,他可能会发现他对他是否适合。希望我提出了我的观点:) –