我正在寻找一个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>
答案 0 :(得分: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);
});
当没有b
时你不小心给了$('#a').val = b
在这里看到完整的答案: http://jsfiddle.net/Ru6FV/
答案 1 :(得分:0)
你可能想在正确加载html后激活整个javascript:
$(function() {
$('#a').bind(...
...
});
});
究竟是什么问题?它似乎以某种方式工作(没有检查计算)...... implementation with jsfiddle
答案 2 :(得分:0)
更改
$('#a').val(b);
到
$('#a').val(a);
在第二次绑定中。
答案 3 :(得分:0)
加载jquery后,您缺少</script>
标记。