0
首先,在所有應有的尊重下,不要問我爲什麼必須這樣做。這個請求是有人的請求,他有他自己的理由。 :d在JQuery中重新加載標籤的全部內容
所以纔給點...
讓我們只說 「p1.php」 包含此代碼:在「p2.php
<ul>
<li><a href="#tab1">Tab 1</a></li>
<li><a href="#tab2">Tab 2</a></li>
</ul>
<div id="tab1">
<?= $_GET['somechange1'] ?>
<a onclick="actionRunOnTab1()">some change 1</a>
</div>
<div id="tab2">
<?= $_GET['somechange2'] ?>
</div>
然後我包括 「p1.php」 「,並補充一些JavaScript就像這樣:
<script type="text/javascript" src="jquery-1.6.2.min.js"></script>
<script type="text/javascript" src="jquery-ui-1.8.16.custom.min.js"></script>
<link rel="stylesheet" href="redmond/jquery-ui-1.8.16.custom.css" type="text/css" />
<div id="tab">
<? include 'p1.php'; ?>
</div>
<script language="javascript">
$(function() {
$('#tab').tabs();
});
// Some function
function actionRunOnTab1() {
$.get(
"p1.php",
{ somechange1 : 'Something to send out 1' },
function(data){
$('#tab').html(data);
$('#tab').tabs();
}
);
}
</script>
我調試使用在Firefox螢火結果。在第一次使用$('#tab').tabs();
創建標籤時,它爲所有需要的元素添加了一些css類來創建標籤,但是在第二次使用$('#tab').tabs();
時,功能actionRunOnTab1
沒有任何效果。
如何刷新所有標籤頁?如果我重新加載一個1的選項卡,肯定需要更多額外的$ .get(),這意味着需要多次連接到服務器。
如果我沒有弄錯,加載事件只加載1個選項卡取決於索引,對不對?我想重新加載所有標籤。因爲選項卡2實際上必須根據選項卡1更改其內容。所以我認爲最好的方法是一次重新制作整個選項卡(替換#tab的內容),而不是通過加載事件(每個選項卡)。或者有什麼想法如何解決我的問題? – xekaiforce 2012-01-13 04:01:43