我正在用 PHP 脚本中的选项卡构建一个 jQuery 对话框。该脚本在循环内使用“include”指令,遍历选项卡并包含其他脚本。每个包含的文件都有选项卡的数据和一个 <script> 标记,其中包含一个 jQuery document.ready() 函数。没有循环,它本质上是这样做的:
<div id="tabDialog">
<div id="tabs">
<ul>
<li><a href="#tab1'>Tab1</a></li>
<li><a href="#tab2'>Tab2</a></li>
</ul>
<div id="tabContainer">
<div id="tab1">
<?php include "tab1.php"; ?>
</div>
<div id="tab2">
<?php include "tab2.php"; ?>
</div>
</div>
</div>
</div>
例如,tab1.php 可能具有以下内容:
<script type="text/javascript">
$(document).ready (function () {
alert ('tab1 loaded');
});
</script>
问题是,在使用 <div id="dialog"> 作为对话框的 DIV 创建和打开对话框时,会再次调用文档的就绪函数。这是对话框代码:
$("#tabDialog").dialog ({
autoOpen: false,
minWidth: 450,
minHeight: 400,
width: 600,
height: 500
}).dialog ('open');
造成这种情况的原因是什么?解决这种情况的最佳方法是什么?我试图将每个选项卡的功能保存在单独的文件中,因为它们可以在多种情况下使用,并且我不必复制与它们关联的代码。
感谢您的任何帮助或建议。