2011-11-25 114 views
1

我已经在php中创建了下面的表单和一些javascript代码,它不会重定向到其他页面。javascript无法在php中重定向

<form method="post" name="for"> 
<?php 

echo "<input type='text' name='text1'><input type='submit' name='submit' value='go' onclick='fon1();'>"; 
?> 
</form> 

<?php 
     echo "<script type='text/javascript'>"; 
     echo "function fon1(){"; 
     echo "var k = confirm('Confirm Delete');"; 
     echo "if(k == true){"; 
     echo "window.location = 'http://www.google.com'; }"; 
     echo "else{ window.location = 'http://www.yahoo.com';} "; 
     echo "}</script>"; 
?> 

回答

1

放一个“返回false”;致电fon1();

echo "<input type='text' name='text1'><input type='submit' name='submit' value='go' onclick='fon1(); return false;'>"; 
+0

优秀,其重定向到页面,我可以知道为什么吗?以及它如何工作。 – Rafee

+0

type =“submit”绕过了你的javascripts,为了压制浏览器的默认行为,我们必须取消当前提交的行为。您也可以将类型更改为按钮,并删除返回false语句。 – jerjer

0

使用

window.location.href 

,而不是

window.location 
+0

试过了,没有工作 – Rafee

0

我想你 “提交”, “按钮” 改变你的形式BUTTOM类型:

echo "<input type='text' name='text1'><input type='button' name='submit' value='go' onclick='fon1();'>"; 

尝试这个!

+0

有了提交按钮,我需要从它的值。 – Rafee

0

可以使用window.location.replace模拟重定向(后退按钮将无法正常工作) 或window.location.href所以模拟点击

0

这样做:

 
<form method="post" name="for"> 
<?php 

echo "<input type='text' name='text1'><input type='button' name='submit' value='go' onclick='return fon1();'>"; 
?> 
</form> 

<?php 
     echo "<script type='text/javascript'>"; 
     echo "function fon1(){"; 
     echo "var k = confirm('Confirm Delete');"; 
     echo "if(k == true){"; 
     echo "location.href = 'http://www.google.com'; }"; 
     echo "else{ window.location = 'http://www.yahoo.com';} "; 
     echo "}"; 
?> 
+0

它不工作,你检查你的本地主机上。 – Rafee

0
<form method="post" name="for"> 
<?php 

echo "<input type='text' name='text1'><input type='button' name='submit' value='go' onclick='fon1();'>"; 
?> 
</form> 


    <script type='text/javascript'> 
     function fon1(){ 
     var k = confirm('Confirm Delete'); 
     if(k == true){ 
     document.location = 'http://www.google.com'; 
     } 
     else 
     { 
     document.location = 'http://www.yahoo.com'; 
     } 
     }</script> 
0

只要使用这个..

<form method="post" name="for"> 
    <?php 
    echo "<input type='text' name='text1'><input type='button' name='submit' value='go' onclick='fon1();'>"; 
    ?> 
    </form> 



<script type='text/javascript'> 
     function fon1(){ 
      if(confirm('Confirm Delete')) {; 
       document.location.href = 'http://www.google.com'; 
      } 
      else { 
       document.location.href = 'http://www.yahoo.com'; 
      } 
     } 
    </script> 
+0

你有没有检查你自己的代码,我得到了解决方案。 – Rafee