我有一个HTML表单
<div class="field">
<label for="num1">Number 1</label>
<input id="num1" type="text" />
</div>
<div class="field">
<label for="num2">Number 2</label>
<input id="num2" type="text" />
</div>
当“数字1”改变时,我想改变“数字2”来匹配它。所以这段JQuery代码:
$('#num1').change(function() {
var one = this.val();
$('#num2').val(one);
});
但上面写着:
Uncaught TypeError: Object #<HTMLInputElement> has no method 'val'
在线路上
var one = this.val()
我做错了什么?
发布于 2012-10-25 13:08:24
仅在jQuery对象上定义.val()
。this
返回没有此属性的DOM对象。
要修复您的代码:
使用$(this).val()
的
this.value
的
发布于 2012-10-25 13:08:21
this
是DOM对象,而不是jquery对象。您可以使用this.value
或$(this).val()
$('#num1').change(function() {
var one = $(this).val();
$('#num2').val(one);
});
发布于 2012-10-25 13:11:56
用:$(this).val();
代替this.val();
演示:JSFIDDLE
https://stackoverflow.com/questions/13061911
复制相似问题