我正在为我的应用程序使用JQuery。 在我的代码中,我想只在标签中获得文本'Firstname'。
我用
尝试了 $("#label"+div_id+"").html(); //but displays Firstname along with the span tag..
但我只需要名字。我怎么能这样做?
以下是我的Html代码
<label id="label1">Firstname<span class="req"><em> * </em></span></label>
答案 0 :(得分:6)
此问题的一般解决方案 - 即获取即时文本而非子文本 - 是elem.clone().children().remove().end().text();
(其中elem是$("#label"+div_id)
)。这与karim79的解决方案具有相同的结果,但如果标签中添加了其他标签,则可以不破坏。
答案 1 :(得分:5)
复制元素,清空EM并最终删除span标记(测试):
var clone = $("#label"+div_id+"").clone();
clone.find('em').empty().remove('span');
alert(clone.text()); //alerts 'Firstname'
我会说@ ozan的解决方案是更好的解决方案(如果略微不太可读)并且只在一行中完成:
alert($("#label"+div_id+"").clone().children().remove().end().text());