2010-07-20 47 views
0

我有一個ASP.Net TreeView控件,帶有子節點上的複選框。我想要在TreeView控件中獲取已檢查的子節點的文本。我想用jQuery/javascript來獲取檢查的子節點文本。大多數情況下,我在頁面中使用過jQuery。Get Tree節點名稱

我已經使用$(this).text()。但它不工作。由於控件是ASP.Net TreeView控件,我正在使用jQuery。所以無論是jQuery或javascript

回答

1

既然你沒有張貼你與我的工作什麼的樣本創建試圖涵蓋的例子幾個不同的場景。

<ul id="list"> 
    <li><input type='checkbox' id="check1" name="check1" value="hello" /> Checkbox #1</li> 
    <li><input type='checkbox' id="check2" name="check2" /> Checkbox #2 <a href="#">hello</a></li> 
    <li><input type='checkbox' id="check3" name="check3" /> Checkbox #3</li> 
    <li><input type='checkbox' id="check4" name="check4"/> Checkbox #4</li> 
</ul> 

<button id="output"></button> 

在點擊按鈕...

$("#output").bind("click", function(){ 

    // can be any jQuery selector -- for this example we use #list 
    $("#list").find("input[type='checkbox']:checked").each(function(){ 
    var $t = $(this),   // current checkbox 
     $p = $t.parent(),  // parent li - define more so w/ parent('li') 
     text = $p.text(),  // text of li 
     val = $t.val(),   // checkbox value 
     id = $t.attr('id'),  // checkbox id 
     name = $t.attr('name'), // checkbox name 
     children = $p.children("a:first").text(); // select first child anchor element->get text 

    // insert magical code here... 

    // print to console for debug 
    console.log($t, $p, text, val, id, name, children); 

    }); 
}); 
0

首先,你必須檢查你是否在樹形視圖中使用適配器。如果您使用的是適配器,則基本上必須在DOM中搜索生成具有名爲ParentSelected或Selected的類的元素。這是微軟使用的命名慣例。

它將會像這些:

$("li[class$='Selected']").children("a").val() 

$("li[class$='Selected']").children("a").attr("text") 
+0

ok.what是這個類$?它是默認的嗎? – 2010-07-20 17:04:11

+0

for循環內我將如何檢索文本?它是$(「li [class $ ='Selected']」)。children(「a」)。attr(「text」)就像你上面提到的那樣?這課是什麼$? – 2010-07-20 17:39:28