2017-01-07 66 views
0

我有一个PHP函数与页面的刷新结束,然后抛出一个JavaScript函数声明:的Javascript功能不起作用

<script> 
    var u = null; 
    function tab(u) { 
     $('#element1').css('display', 'block'); 
     $('#element2').css('display', 'none'); 
    } 
</script> 
<?php 
    if (isset($_POST['submit1'])) { 
     $tab = 1; 
     header("Refresh:0");    
     echo "<script>window.scrollTo(0, 1000);</script>"; 
     echo "<script>tab(".$tab.");</script>"; 
    } 
?> 

的window.scrollto作品的功能,但该选项卡功能不是。 我写了ob_start和ob_end_flush以避免标题问题。

+0

在JavaScript控制台中是否有任何错误? –

+1

因为你产生输出... – ewcz

+0

在JavaScript控制台和PHP错误不,我没有得到错误后,使用'header'功能有可能是一个问题 –

回答

2

您在if语句中缺少关闭)。试试这个:如你所说

<script> 
    var u = null; 
    function tab(u) { 
     $('#element1').css('display', 'block'); 
     $('#element2').css('display', 'none'); 
    } 
</script> 
<?php 
    if (isset($_POST['submit1'])) { 
     $tab = 1; 
     header("Refresh:0");    
     echo "<script>window.scrollTo(0, 1000);</script>"; 
     echo "<script>tab(".$tab.");</script>"; 
    } 
?> 

header("Refresh:0"); shoudn't是一个问题。在最坏的情况下,您会收到一条警告,说Warning: Cannot modify header information - headers already sent by...

此外,在开发中,您应该始终打开error_reporting以查看可能的错误或警告。您可以打开错误这样的报告:

error_reporting(E_ALL); 
ini_set('display_errors', 1); 

不要忘记删除/评论说,生产/生活。

+0

好赶上!它不应该在服务器端抛出错误? –

+0

我有这样的感觉,但写了一个问题,我犯了一个错误。 –

+1

@SandeepNayak,它应该有,如果他有错误报告打开。 – Ionut