如何删除所选文本范围内的类属性?

时间:2012-02-24 06:02:43

标签: javascript jquery selection range

我需要从所选文本中删除class属性(所选文本意味着用户将通过鼠标选择一些文本范围)。如果所选文本具有 class ='ansspans',那么我们需要为该特定选定文本删除该类。 (我在gridview中使用它,所以会有很多行,所以我需要删除该特定选定文本的类)

 <span id="sss_ctl00_ctl06_lblAnswerText" class="Label"> 
      <span>ssss</span><span class="ansspans">assignment</span>submission
 </span>
  1. 如果用户从页面中选择assignment已经有class ='anspans',那么如果他点击按钮(重置突出显示的标记),那么对于该特定的选定文本,我们应该删除class属性。点击按钮后。
  2. 输出

      <span id="sss_ctl00_ctl06_lblAnswerText" class="Label"> 
           <span>ssss</span><span>assignment</span>submission
     </span>
    

    这就是为什么我这样做,

    1. 基本上用户会选择一些单词并标记一些单词。 (标记和突出显示全部完成,n工作正常)(想象他选择3个单词)
    2. 现在,用户想要删除其中一个突出显示的单词,然后选择单词,然后单击“重置”按钮。然后,对于所选文本,将删除class属性。我面临的问题。
    3. 更新:即使我尝试过这样的朋友解决方案之一。 JSfiddle - 仍然无法使用我的网页。

2 个答案:

答案 0 :(得分:1)

在Rangy论坛上解决了特定于Rangy的版本。代码很长,所以不在这里复制。 http://groups.google.com/group/rangy/browse_thread/thread/5738cf7bc32c607a

演示:http://jsfiddle.net/URms2/

答案 1 :(得分:0)

您可以使用jQuery方法添加删除类。请参阅removeClass

addClass