Recibo el error "Error de tipo no detectado no se puede leer la propiedad de nulo (leyendo 'valor')" Constantemente busco una solución y no sé qué está mal en el código. ¿Me pueden ayudar?
Mi código
function test(){ for(var i=0; i < 40; i++) { var name1.value = document.getElementsByClassName('test1')[i]; var address1.value = document.getElementsByClassName('test2')[i]; if( name1.value == "test4"){ address1.value = "test5"; } else if (name1.value == "test6"){ address1.value = "test7"; } else if (name1.value == "test8"){ address1.value = "test9"; } } } < div class="form grup test1"> < labe for="power-full.names"> Names full</lable> < input name="power-full.names" list="power-full.names" type="text" class="form grup test1" onclick="test"(this)"> <datalist type"text" id="power-full.names"> <option value="test4"> <option value="test6"> <option value="test8"> </datalist> </div> < div class="form grup test2"> < labe for="power-full.adress"> Adress full</lable> < input name="power-full.adress" list="power-full.adress" type="text" class="form grup test2" onclick="test"(this)"> <datalist type"text" id="power-full.adress"> <option value="test5"> <option value="test7"> <option value="test9"> </datalist> </div>Ha olvidado agregar las clases, por lo que document.getElementsByClassName('test1')[i] devuelve Ninguno. Y javascript no puede leer la propiedad de valor de Ninguno. Arreglar -
<option class="test1" value="test4">primero: tal vez debería usar el evento onchange para vincular input.test1 .
segundo: cambie el valor de input.test2
function test1(ele){ var address1 = document.getElementById('test2'); if( ele.value == "test4"){ address1.value = "test5"; } else if (ele.value == "test6"){ address1.value = "test7"; } else if (ele.value == "test8"){ address1.value = "test9"; } } <div class="form grup test1"> <lable for="power-full.names"> Names full</lable> <input name="power-full.names" list="power-full.names" type="text" class="form grup test1" onchange="test1(this)"> <datalist type"text" id="power-full.names"> <option value="test4"> <option value="test6"> <option value="test8"> </datalist> </div> <div class="form grup test2"> <lable for="power-full.adress"> Adress full</lable> <input id="test2" name="power-full.adress" list="power-full.adress" type="text" class="form grup test2"> <datalist type"text" id="power-full.adress"> <option value="test5"> <option value="test7"> <option value="test9"> </datalist> </div>