我正在尝试在单击div时将一个字段复制到另一个字段,并且我当前的代码不起作用。它显示了' 0' 0在field1中,即使field2默认设置为1。
$(document).on('click', '#button', function() {
$('#textfield1').val === "document.getElementById('#textfield2').value";
答案 0 :(得分:3)
尝试:
$(document).on('click', '#button', function() {
$('#textfield1').val($('#textfield2').val())
});
答案 1 :(得分:1)
你在这里使用奇怪的JS和jQuery混合。
您的主要问题是val()
是一种方法,而不是一种财产。因此,您的代码应如下所示:
$(document).on('click', '#button', function() {
$('#textfield1').val($('#textfield2').val());
});
我强烈建议您熟悉jQuery documentation,特别是val()
。
答案 2 :(得分:0)
它显示' 0'在field1中,即使field2默认设置为1。
您将字符串分配给$('#textfield1').val
方法,这就是为什么您的代码对textfield1
的值没有任何影响。
成功
$(document).on('click', '#button', function() {
$('#textfield1').val( $('#textfield2').val()); //use jquery val method
}
答案 3 :(得分:0)
通常 JQuery 只包含一组函数(如@Craicerjack所说),而不是属性,因此,首先删除===
并将新值作为参数传递:< / p>
$('#textfield1').val("yourText");
此外,元素的值不是JavaScript代码,而是字符串,因此请将值指定为字符串:
$('#textfield1').val(document.getElementById('#textfield2').value);
正如@Rory McCrossan所说,你正在使用 DOM 和 JQuery 的奇怪组合,所以做这样的事情更清楚:
$('#textfield1').val($('#textfield2').val());
或者使用纯 DOM :
document.getElementById('#textfield1').value = document.getElementById('#textfield2').value;