javascript if/else,但仍可编辑
javascript if/else, but still editable
我正在创建一个表单,如果复选框被选中,则需要一个字段与另一个字段相等,但如果用户决定更改金额,它仍然可以编辑。
document.addEventListener("change", myFunction2);
function myFunction2(){
if (document.getElementById('itemize').checked==true) {
document.getElementById('six').value = document.getElementById('jobs_9').value;
}
现在只要勾选了那个分项框,那个输入框就不能编辑了。有没有办法让输入相等,但又保持开放以供修改?
谢谢。
试着从人类的角度来思考。
您是说:当文档更改时,如果复选框被选中,则字段将相等。
尝试为复选框添加监听器!
告诉我你能不能做到!
编辑:您可以做什么的示例(使用您的代码):
var checkboxy = document.getElementById('itemize');
checkboxy.addEventListener("change", myFunction2);
function myFunction2(){
if (document.getElementById('itemize').checked==true) {
document.getElementById('six').value = document.getElementById('jobs_9').value;
}
}
将不同的处理程序直接附加到每个输入,其中每个处理程序将更改的输入的值复制到另一个输入。不使用 jQuery,你可以这样做:
(function () {
var itemize = document.getElementById('itemize');
function addChangeListener(from, to) {
from = document.getElementById(from);
to = document.getElementById(to);
from.addEventListener('change', function () {
if (itemize.checked) {
to.value = from.value;
}
}
}
addChangeListener('six', 'jobs_9');
addChangeListener('jobs_9', 'six');
})();
选中 #itemize
复选框后,您还需要一个处理程序。如果在这种情况下值不同,您只需选择一个(除非您想跟踪最后更改的值)。
我正在创建一个表单,如果复选框被选中,则需要一个字段与另一个字段相等,但如果用户决定更改金额,它仍然可以编辑。
document.addEventListener("change", myFunction2);
function myFunction2(){
if (document.getElementById('itemize').checked==true) {
document.getElementById('six').value = document.getElementById('jobs_9').value;
}
现在只要勾选了那个分项框,那个输入框就不能编辑了。有没有办法让输入相等,但又保持开放以供修改?
谢谢。
试着从人类的角度来思考。
您是说:当文档更改时,如果复选框被选中,则字段将相等。
尝试为复选框添加监听器!
告诉我你能不能做到!
编辑:您可以做什么的示例(使用您的代码):
var checkboxy = document.getElementById('itemize');
checkboxy.addEventListener("change", myFunction2);
function myFunction2(){
if (document.getElementById('itemize').checked==true) {
document.getElementById('six').value = document.getElementById('jobs_9').value;
}
}
将不同的处理程序直接附加到每个输入,其中每个处理程序将更改的输入的值复制到另一个输入。不使用 jQuery,你可以这样做:
(function () {
var itemize = document.getElementById('itemize');
function addChangeListener(from, to) {
from = document.getElementById(from);
to = document.getElementById(to);
from.addEventListener('change', function () {
if (itemize.checked) {
to.value = from.value;
}
}
}
addChangeListener('six', 'jobs_9');
addChangeListener('jobs_9', 'six');
})();
选中 #itemize
复选框后,您还需要一个处理程序。如果在这种情况下值不同,您只需选择一个(除非您想跟踪最后更改的值)。