javascript - 使用 Javascript 取消选择文本

标签 javascript

我在一个 html 页面的表单中有两个带有数字 id 的输入标签。重点是,我想从第一个输入的第一个和第二个字符设置第二个输入的值。然后我想在第二个输入中取消选择选定的文本。有办法吗? 我写了这段 HTML 代码:

<label>Num. Fattura:
        <input type="text" name="numfattura1" onkeypress="return event.keyCode != 13" id="1" />
    </label>
    <label>Importo:
        <input type="text" name="importo1" onkeypress="return event.keyCode != 13" />
    </label>
    <br />
    <label>Num. Fattura:
        <input type="text" name="numfattura2" onkeypress="return event.keyCode != 13" id="2" onfocus="twoDigits(2)" />
    </label>
    <label>Importo:
        <input type="text" name="importo2" onkeypress="return event.keyCode != 13" />
    </label>
    <br />

还有这个 javascript 函数:

function twoDigits(id){
    var previousId = id - 1;
    var prevoiusValue = document.getElementById(previousId).value;
    document.getElementById(id).value = prevoiusValue.substring(0,2);
    document.selection.empty();
    window.getSelection().removeAllRanges()
}

我找不到如何取消选择自动选择的文本。

最佳答案

使用 setTimeOut 设置 selectionStart 和 selectionEnd。

http://jsfiddle.net/enQvT/适用于 Firefox。

function twoDigits(id){
    var previousId = id - 1;
    var prevoiusValue = document.getElementById(previousId).value;

    var elem = document.getElementById(id);
    setTimeout(function() {
               elem.selectionStart=0;
                elem.selectionEnd=0;
                }, 0);
    elem.value = prevoiusValue.substring(0,2);
}

关于javascript - 使用 Javascript 取消选择文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8069999/

相关文章:

Javascript,我如何调整这个 js 下拉菜单

javascript - 为什么图像在加载时不显示,但在刷新时显示?

javascript - React-native全局变量未定义

javascript - jsxgraph:如何更新线的点?

javascript - 在Wordpress中执行 Jest 测试时,如何修复import {}意外 token

javascript - 单击 Meteor 中的链接时下载文件

javascript - 动态 CasperJS 循环在随机迭代时终止

javascript - jQuery mCustomScrollbar 更新错误

javascript - 当表格可以水平滚动时,StickyHeaders 是固定的

Javascript 将内容复制到剪贴板