如果选中了复选框,我创建的表单要求字段与另一个字段相等,但如果用户决定更改金额,则仍可编辑。
document.addEventListener("change", myFunction2);
function myFunction2(){
if (document.getElementById('itemize').checked==true) {
document.getElementById('six').value = document.getElementById('jobs_9').value;
}
现在只要选中该项目大小框,就无法编辑该输入框。有没有办法让输入相等,但也可以将其打开进行修订?
感谢。
答案 0 :(得分:1)
将不同的处理程序直接附加到每个输入,其中每个处理程序将更改的输入的值复制到另一个输入。不使用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
复选框后,您还需要一个处理程序。如果在这种情况下值不同,您只需选择一个(除非您想跟踪最后更改的那个)。
答案 1 :(得分:0)
尝试在人类版本中更多地考虑它。
您说:当文档更改时,如果选中该复选框,则字段将相等。
尝试在复选框中添加一个监听器!
告诉我你是否可以做到!
编辑:您可以执行的操作示例(使用您的代码):
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;
}
}