0

我基本上想使用 javascript 来拥有 2 个相互依赖的文本框。例如,如果我在 textbox1 中输入一个数字 x,我希望 textbox2 立即更新为 x*2。如果我在 textbox2 中输入 x,我希望 textbox1 自动更新为 x/2。这些值将始终是数字。

编辑:所以这是我的 html 文件。谁能给我一个提示为什么它不起作用?

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <script type="text/javascript" src="scripts/jquery-1.7.2.js"></script>
    <script type="text/javascript">
        $("#text1").keyup(function(){
            $("#text2").val($(this).val() * 2);
        });
        $("#text2").keyup(function(){
            $("#text1").val($(this).val() / 2);
        });        
    </script>
</head>
<body>
    <input type="text" name="text1" size=3 maxlength=6>
    <input type="text" name="text2" size=3 maxlength=6>
</body>
</html>
4

5 回答 5

2

在非常简单的情况下,应该这样做(在这里小提琴):

// in a <script>:
window.update = function() {
  var one = document.getElementById('one'),
      two = document.getElementById('two');    

  two.value = parseInt(one.value) * 2;
}​

<!-- in your HTML: -->
<input id="one" type="text" onchange="update();" />
<input id="two" type="text" />​
于 2012-05-10T20:20:23.443 回答
1
$("#textbox1").onkeyup(function() {
    $("#textbox2").val($(this).val() * 2);
});

$("#textbox2").onkeyup(function() {
    $("#textbox1").val($(this).val() / 2);
});
于 2012-05-10T20:19:45.573 回答
0

我现在无法测试您需要的确切代码,但基本想法是在每个框上放置一个 OnKeyUp 事件并通过脚本修改另一个框(使用 getElementById 或您喜欢的任何方法)

如果其他人没有先得到它,我会尽可能地整理一些代码。

于 2012-05-10T20:18:01.770 回答
0

使用 onchange 事件或 jquery 更改回调来更新其他框。

于 2012-05-10T20:19:47.977 回答
0

在这种情况下,应该这样做:http: //jsfiddle.net/du09jhpd/

window.update = function() {
  var one = document.getElementById('one'),
      two = document.getElementById('two');    

  two.value = parseInt(one.value) * 2;
}
window.update1 = function() {
  var one = document.getElementById('one'),
      two = document.getElementById('two');    

  one.value = parseInt(two.value) / 2;
}
于 2017-11-03T02:57:41.920 回答