2010-09-26 134 views
1

我想,当我按下ENTER条span标签使用jQuery

$.keynav.enterDown = function() { 
    var accom = $('#suggestions p.keynavon').html(); 
    alert(accom); 

} 

这是伟大的工作,但结果包含<span></span>代码才能AP标签的文本值,反正是有,我可以从字符串中剥离这些标签?

回答

2

如果你只是想要的文字,这听起来像你以后,用.text()代替.html(),像这样:

$.keynav.enterDown = function() { 
    var accom = $('#suggestions p.keynavon').text(); 
    alert(accom); 
} 

如果你确实需要专门剥离<span>标记,克隆的内容(以不影响原件),并通过.replaceWith()替换它们的内部内容,如下所示:

$.keynav.enterDown = function() { 
    var accom = $('#suggestions p.keynavon').clone() 
       .find('span').replaceWith(function() { return this.innerHTML; }) 
       .end().html(); 
    alert(accom); 
} 
+0

干杯尼克斯,我完全忘了.text! 你能帮助我的东西吗? 有无论如何取文本,然后删除 - 符号后的字符(文本的其余部分),然后删除 - 本身,例如。 “some - text”会变成 “some” ? – AJFMEDIA 2010-09-26 10:45:10

+0

@AJFMEDIA - 我不确定*究竟是什么,但是你可以使用'.indexOf()'来获得你在切片或子字符串后的位置,我会问一个问题与你的例子后,输入和期望的结果:) – 2010-09-26 10:47:04