文本选择在alert()中可见,但在html()中不可见

时间:2014-05-15 14:31:43

标签: javascript jquery

我使用document.getSelection()

获得了一个变量

如果我使用alert(),则会很好地显示此变量,但如果我使用html()则不会显示。

如何使用html()将其显示?

$(document).ready(function(){
$(".sentence").dblclick(function(){
        var selected_word = document.getSelection();
        $("#word_to_be_showned_in").html(selected_word);
        alert(selected_word);
});
});
<p class="sentence">have a try</p>
<p>Selected word should appear here: <span id="word_to_be_showned_in">XXX</span></p>

示例(与chrome兼容):http://js.do/code/38012

2 个答案:

答案 0 :(得分:4)

getSelection()返回一个对象,而不是字符串。添加.toString()以获取其文字:

var selected_word = document.getSelection().toString();
$("#word_to_be_showned_in").html(selected_word);
alert(selected_word);

修复示例:http://js.do/code/38017

答案 1 :(得分:1)

向var添加一个空字符串,它将被视为字符串。

示例:

var+""

http://jsfiddle.net/U5nWV/

现场演示您的代码