将一个复制到另一个文本框并更改字母

时间:2012-09-20 15:49:05

标签: php javascript textbox copy

我正在使用此脚本从一个文本框复制到另一个文本框。当我在方框A中写下将在B框中复制的内容将被更改时,我不知道如何制作。进出口。字母A ti为001,字母E为002,字母V为008.我不在乎它是用PHP还是JavaScript。

感谢您的时间和帮助

<html>
<head>
<script type="text/javascript">
    function copy_data(val){
     var a = document.getElementById(val.id).value
     document.getElementById("copy_to").value=a
    }

    </script>
</head>
<body>
From:&nbsp;&nbsp;&nbsp; <input type="text" name ="a" id="copy_from" onkeyup="copy_data(this)"/><br>
To:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <input type="text" name ="b" id="copy_to"/><br>
</body>
</html>

2 个答案:

答案 0 :(得分:0)

这样做的一种方法是使用JavaScript函数,使用对象将特定字符映射到要插入的特定代码(在这种情况下,字符a映射到001,等等阐述):

var keysToCodes = {
    'a': '001',
    'b': '002',
    'c': '003',
    'd': '004'
};

function transferAndAmend(source, target, e) {
    if (!source || !target) {
        return false;
    }
    else {
        var e = e || window.event,
            keynum = window.event ? e.keyCode : e.which,
            key = String.fromCharCode(keynum),
            char = keysToCodes[key] ? keysToCodes[key] : key;
        target.value += char;
    }
}

var source = document.getElementById('one'),
    target = document.getElementById('two');

source.onkeypress = function(e) {
    transferAndAmend(this, target, e);
};​

JS Fiddle demo

这在Windows XP上的Chrome 21和IE 7中经过测试,似乎也有效。

答案 1 :(得分:0)

Here是使用您的代码的javascript替换函数的一个小样本,它可能正是您正在寻找的。

刚改变:

document.getElementById("copy_to").value=a

为:

document.getElementById("copy_to").value=a
    .replace(/a/g, '001') // the letter/string, you code
    .replace(/b/g, '002') // ...