好了,所以我有三個<select>
場一字排開也始終無法運行水平是這樣的:JavaScript函數後,.load
---------- | teacher1 | ---- | student1 | - --- | student6 |
---------- | teacher2 |
---------- | teacher3 |
Okey,因此對於這個例子我們使用老師和學生,老師可以包含幾個學生。當您從左側列表中選擇一位教師時,所有連接到該教師的學生都會出現在中間列表中。而在右邊,我們有沒有老師的學生。如果您單擊中間字段的學生,它將從該教師中刪除並顯示在正確的字段中(連接在MYSQL DB中生成)。
的所有選擇字段內<div>
,我用jQuery使用.load()函數來改變的內容,喜歡本作的刪除功能:
$('#hold2').load("page.php?q=" + data);
一切正常加載和數據庫的變化正確的,問題是我想在.load()函數後刷新mid和right字段,所以不需要刷新頁面來查看結果。所以我把這些功能下:
$('#hold2').load("page.php?q=" + data);
refreshTable1(teacher);
refreshStudent();
這裏是refreshTable1:
function refreshTable1(value) {
teacher = value;
$('#holder').load("example.php?q=" + value);
}
這裏是refreshStudent:
function refreshStudent() {
$('#table').load("examplepalge.php?p=blabla", function(){
setTimeout(refreshTable1(etc), 2000);
});
}
有時刷新兩個中間和右側直接還田,有時無,有時只是其中之一。我怎樣才能讓這個運行流暢,這樣的領域肯定會正確刷新之後:$('#hold2').load("page.php?q=" + data);
請注意:並非所有的連接和功能的鏈接都是正確的,我只是改變了一些東西,在這個例子中。但是我們已經知道這些功能是有效的,有時它們正確加載,有時不加載。
調用是異步的,並且您正在嘗試在調用期間更新表。嘗試使用回調,而不是..爲了上帝的緣故,避免在不需要時使用settimeouts –
'refreshTable1'需要一個參數。當你從'setTimeout'調用它時,你沒有傳遞參數。 – Barmar
@barmar對不起,在我的示例中,它已經在「真實」文檔中工作。 – jdoe