Deskripsi masalah: Hanya ada empat node di TreeView di frameset. Setelah membuka satu, tutup tiga node lainnya.
Awalnya saya menulisnya di TreeView1_Expand, yang berfungsi, tetapi Anda perlu menyetel autopostback ke true. Ini akan terlihat jelek saat menyegarkan.
==================
1. "Jangan submit saat memperluas, submit hanya saat mengganti node yang dipilih"
2. "Aktifkan TreeView untuk secara otomatis menarik kembali semua node yang diperluas setelah memperluas sebuah node, yaitu, hanya ada satu node yang diperluas pada saat yang sama."
3. "Solusi perluasan TreeView tanpa berkedip"
4. "Diskusi Khusus TreeView"
5. "Penelitian Metode Kontrol JavaScript TreeView"
==================
Ada script javascript di atas yang ditulis dengan baik, tetapi setelah mencobanya lama, saya selalu mendapatkan error.
Jadi saya menulisnya sendiri.
<bahasa skrip="JavaScript">
fungsi initPohon()
{
var tree = dokumen.semua["TreeView1"];
tree.attachEvent("onexpand", SelectedIndexChange); //Tambahkan acara
}
fungsi SelectedIndexChange()
{
var temp = ini.TreeView1.clickedNodeIndex;
var node = Array baru();
node = ini.TreeView1.getChildren();
for(i=0;i<node.panjang;i++)
{
jika(saya!=suhu)
{
jika(saya<10)
nodeIndex = "0"+i;//Saya hanya menggunakan empat node, coba dengan lebih dari sepuluh node.
this.TreeView1.getTreeNode(nodeIndex).setAttribute('diperluas','false');
}
}
}
</skrip>
Terakhir, tulis satu di badan
<tubuh onload="initTree();">
Ini siap digunakan.
Tentu saja Anda juga dapat menulis javascript di page_load seperti di "Forum TreeView", tetapi itu akan sangat merepotkan dan rawan kesalahan.