如何根据第三输入的变化强制输入值变化?

时间:2019-08-16 01:26:42

标签: javascript html css

这是东西。我的输入值必须与另一个输入值相等。虽然,第二个输入与另一个输入的{'2':{(a,3),(b,1)}, '0':{(a,2), (b,1)}, '6':{(a,1), (b,1)}, '11':{(a,0) , (b,1)}} 事件有关。例如:

输入1 :计算2 + 2、4 + 4或任何其他数字
输入2 :更改输入1时,会得到其值
输入3 :在输入2发生更改时,获取其值

事实是,当输入2的值由于输入1而改变时,除非我手动更改输入2,否则输入3不会改变。

任何人都可以帮助我,这是怎么了?

我实际上没有尝试过某些东西,因为我不知道其他解决方法。

onchange
function f_mezanino() {

  if (document.getElementById('mezanino').checked) {
    document.getElementById("s_alt_max_fac").value = "14";
    document.getElementById("s_alt_max_fac").max = "14";
    document.getElementById("s_alt_max_cum").value = "18";
    document.getElementById("s_alt_max_cum").max = "18";
  } else {
    document.getElementById("s_alt_max_fac").value = "11";
    document.getElementById("s_alt_max_fac").max = "11";
    document.getElementById("s_alt_max_cum").value = "15";
    document.getElementById("s_alt_max_cum").max = "15";
  }
}

function f_legislacao() {
  var alt_max_fac = document.getElementById("s_alt_max_fac").max;
  document.getElementById("s_alt_max_fac_read").value = alt_max_fac;
}

1 个答案:

答案 0 :(得分:0)

根据您提供的代码笔,您可以使用EventTarget.dispatchEvent()手动触发DOM事件,请记住检查兼容性。

    function f_mezanino() {
        if (document.getElementById('mezanino').checked) {
            document.getElementById("s_alt_max_fac").value = "14";
            document.getElementById("s_alt_max_fac").max = "14";
        } else {
            document.getElementById("s_alt_max_fac").value = "11";
            document.getElementById("s_alt_max_fac").max = "11";
        }
        //Dispatch change event here
        var element = document.getElementById("s_alt_max_fac");
        var event = new Event('change');
        element.dispatchEvent(event);
   }

   function f_legislacao() {
       //make s_alt_max_fac_leg change with s_alt_max_fac's the value
       var alt_max_fac_value = document.getElementById("s_alt_max_fac").value;
       document.getElementById("s_alt_max_fac_leg").value = alt_max_fac_value;
   }

如果您能够使用jQuery,则可以使用更短的方法

$("#s_alt_max_fac").trigger("change");