0

我正在寻找一个 jQuery 函数,该函数将在 onBlur 事件发生时更改其他输入框的值。在下面的代码中,我试图读取已更改的输入框的值,并使用它的值来操作其他输入框的值。最终,这将用作转换实用程序。我觉得我在这里很近,有人可以帮忙吗?

谢谢!

<script type="text/javascript" src="http://code.jquery.com/jquery-1.4.1.min.js">
<script type="text/javascript">

$('#a').bind('blur', function() {
    var a = $('#a').val();

    var b = a*1;
    var c = a*1;

    $('#b').val(b);
    $('#c').val(c);

});

$('#b').bind('blur', function() {
    var b = $('#b').val();

    var a = b*2;
    var c = b*2;

    $('#a').val(b);
    $('#c').val(c);
});

$('#c').bind('blur', function() {
    var c = $('#c').val();

    var a = c*3;
    var b = c*3;

    $('#a').val(a);
    $('#b').val(b);

});
</script>
<div style="width:500px">
    <table width="500">
        <tr>
            <td><input type="text" id="a" value="1"/></td>
            <td><input type="text" id="b" value="1"/></td>
            <td><input type="text" id="c" value="1"/></td>
        </tr>
    </table>
</div>
4

4 回答 4

0

加载 jquery 后,您缺少</script>标签。

于 2011-03-11T20:35:25.150 回答
0

我发现你的错误:

改变这个:

$('#b').bind('blur', function() {
    var b = $('#b').val();

    var a = b*2;
    var c = b*2;

    $('#a').val(b);
    $('#c').val(c);
});

对此:

$('#b').bind('blur', function() {
    var b = $('#b').val();

    var a = b*2;
    var c = b*2;

    $('#a').val(a);
    $('#c').val(c);
});

$('#a').val = b没有b的时候你不小心给了

在这里看到完全有效的答案:http: //jsfiddle.net/Ru6FV/

于 2011-03-11T20:29:30.063 回答
0

您可能希望在正确加载 html 后触发整个 javascript:

$(function() {
  $('#a').bind(...
  ...
  });
});

究竟是什么问题?它似乎以某种方式工作(没有检查计算)......用jsfiddle实现

于 2011-03-11T20:30:08.300 回答
0

改变

$('#a').val(b);

$('#a').val(a);

在第二次绑定。

于 2011-03-11T20:31:45.157 回答