我有以下内容:
$('.select-topic').click(function () {
if ($(this).attr('data-list') == "N") {
$(this).attr('data-list', 'Y')
var topicSelectHtml = $('#TopicID').html();
$(this).html(topicSelectHtml);
$(this).attr('data-clicked', 'Y')
}
当用户点击新主题时,它会使用$('#TopicID').html();
并将其用作topicSelectHtml
的html。
这样做但我需要做的是删除新选择不需要的$('#TopicID').html();
部分。这是我的选择html:
<select name="TopicID" id="TopicID"><optgroup label="Admin">
<option value="00">All Topics</option>
<option value="050002">Classes</option>
</optgroup>
xxxxxxxxx</select>
如何删除<optgroup label="Admin"> ... </optgroup>
部分?请注意,我的html中没有换行符。
答案 0 :(得分:1)
var topicSelectHtml = $('#TopicID').clone().find("optgroup:first").remove().end().html();
答案 1 :(得分:0)
为每个optgroup添加id,然后使用remove()函数。
请参阅此处示例 - http://jsfiddle.net/ue2KJ/。
如果您愿意,可以避免向元素添加id,但如果您有多种类型的相同元素,则可能会导致问题。
要删除第一个元素,只需使用 -
$(this).children("optgroup:first").remove();