如何在输入文本框中选择(突出显示)文本

时间:2012-01-31 05:52:17

标签: javascript jquery select coffeescript haml

您好我正在使用haml和coffescript来编写代码。

代码段如下

//haml code for input box and value
%input.detail_text{value: "<%= 'http://dailymus.es/#!/' + answer.user.nickname + '/muses/' + answer._id %>"}

文字输入显示(模态)

enter image description here

如何修改当前的coffescript代码,以便在渲染模态视图时,框中的文本将如上所示突出显示。

我尝试使用以下代码但无效

//code to render the modal view
render: ->
    $(@el).html @template(@model.toJSON())
    //this is where I attempt to select the input box via jQuery and selecting the text
    $(@el).find('input.detail_text').focus().select()
    @

提前致谢

1 个答案:

答案 0 :(得分:4)

以下是选择范围的更高级功能:

$.fn.selectRange = function(start, end) {
    return this.each(function() {
        if (this.nodeName === "INPUT"){
            var inputStart = Math.min(start || 0, this.value.length);
            var inputEnd = Math.min(
                               Math.max(end || this.value.length, inputStart),
                               this.value.length);
            if (this.setSelectionRange) {
                this.focus();
                this.setSelectionRange(inputStart , inputEnd);
            } else if (this.createTextRange) {
                var range = this.createTextRange();
                range.collapse(true);
                range.moveEnd('character', inputEnd);
                range.moveStart('character', inputStart);
                range.select();
            }
        }
    });
};

致谢:http://programanddesign.com/js/jquery-select-text-range/