2012-07-25 97 views
3

我的innerHTML找到一個CheckBoxList的一個特定的複選框的ASP.NET CheckBoxList的:在jQuery的ASP.NET通過複選框標籤

<asp:CheckBoxList ID="CheckBoxList1" runat="server" Width="10%"> 
    <asp:ListItem Selected="True" Value="1">White</asp:ListItem> 
    <asp:ListItem Selected="False" Value="2">Black</asp:ListItem> 
    <asp:ListItem Value="3">Red</asp:ListItem> 
    <asp:ListItem Value="4">Green</asp:ListItem> 
    <asp:ListItem Value="5">Blue</asp:ListItem> 
</asp:CheckBoxList> 

我需要修改/刪除特定CheckBox的特定標籤一個CheckBoxList的:

下面的代碼爲CheckBox值做工精細,但它是不工作的複選框標籤。

var CheckBoxListInputValue = 3; //value may be dynamic 
var CheckBoxListInputInnerHTML = "Red"; //value may be dynamic 
$("#CheckBoxList1 label[innerHTML =" + CheckBoxListInputInnerHTML + "]").remove(); //Not working 
$("#CheckBoxList1 :input[value = " + CheckBoxListInputValue + "]").remove(); //Working 

順便說一句,我不想​​使用任何for循環。

回答

0

您可以使用:contains選擇:

$("#CheckBoxList1 label:contains(" + CheckBoxListInputInnerHTML + ")").remove(); 

請注意:input選擇是棄用,您可以使用input代替。

+0

感謝您的回答。 – user1438964 2012-07-26 07:00:17

1

asp.net從您的CheckBoxList生成的表,以刪除您必須實際刪除TR的選項。下面的代碼刪除您的來樣紅選項,那麼你可以與動態值改爲紅色

$('#CheckBoxList1 label').each(function() { 
     if ($(this).text() == 'Red') { 
      $(this).closest('tr').remove(); 
      return false; 
     } 
    }); 

Test it here