2011-08-10 38 views
0

我有一个php文件,如下所示。该页面生成的html内容实际上由3个html页面组成。我正在使用jquery选项卡将三个html页面放入选项卡中。标签生成发生在一个函数“loadtabs”中,该函数在页面底部被称为内部脚本标签。我面对的问题是,我用来生成选项卡的功能没有在php中执行。只是帮助我找出问题。在php页面上执行javascript函数的问题

editor.php

<html> 
<head> 
<link type="text/css" href="../../css/ui-lightness/jquery-ui-1.8.14.custom.css" rel="Stylesheet" /> 
<link type="text/css" href="./methodeditor.css" rel="stylesheet" /> 
<script type="text/javascript" src="../../js/jquery-1.5.1.min.js"></script> 
<script type="text/javascript" src="../../js/jquery-ui-1.8.14.custom.min.js"></script> 
<script> 



function loadtabs() { 



      $(".tabs").tabs(); 


      method = <? echo $method; ?>; 
      mode = <? echo $mode; ?>; 


      $("#oven").load('oven.php'); 
      $("#detectors").load('detectors.php'); 
      $("#inlets").load('inlets.php'); 

    } 
</script> 
</head> 
<body> 
<form id="editor" action="method.php" method="POST" > 
<div class="editor"> 

<div class="tabs"> 

    <ul> 


     <li><a href="#oven">Oven</a></li> 
     <li><a href="#detectors">Detectors</a></li> 
     <li><a href="#inlets">Inlets</a></li> 
    </ul> 
    <div id="oven" ></div> 
    <div id="detectors" ></div> 
    <div id="inlets"> </div> 

</div> 
<script> 
loadtabs(); 
</script> 
</form> 
</div> 
</body> 
</html> 
+0

您是否在页面上看到任何javascript错误? $ method和$ mode的值是什么?为什么不用字符串包装 - '“<?php echo $ mode;?>”'? – rickyduck

+0

谢谢...没有包装的PHP代码作为一个字符串是问题... – srini

+0

酷,耻辱别人nicked我的回答:( – rickyduck

回答

1

您ahve不specifed在JS报价。尝试这种

function loadtabs() { 



      $(".tabs").tabs(); 


      method = "<? echo $method; ?>"; 
      mode = "<? echo $mode; ?>"; 


      $("#oven").load('oven.php'); 
      $("#detectors").load('detectors.php'); 
      $("#inlets").load('inlets.php'); 

    } 
0

JQuery的,有一个.load这是一个快捷方式.bind( '负载',处理程序)和.load这是一个Ajax模块的一部分。哪一个被解雇取决于争论。

由于您提供的URL作为参数而没有附加选择器,因此它不会去除文档中包含的任何JavaScript并在传递给.html()前执行JavaScript块()

确保这些PHP文件中的JavaScript(如果有的话)没有错误。