Estoy tratando de borrar el valor de una entrada dependiendo de si encuentra o no una identificación, si encuentra una identificación existente, js actualiza el valor de una entrada, pero si no lo hace, mantiene la última encontrada pero necesito tener el valor claro, alguien me puede decir que es lo que esta mal:
function driverdata(valueid) { var numero_id = valueid; //console.log(valueid) var idselect = document.getElementById('driver'+id_number).value; document.getElementById("idinsearch"+ id_number).value = idselect; //console.log(idselect); var placa = document.getElementById("searchable"+idselect).value; console.log(placa); if (placa != null) { document.getElementById("placa"+ id_number).value = placa; } else { document.getElementById("placa"+ id_number).value = ""; } }En el método driverdata, no define la variable id_number , por lo que no está definida cuando intenta obtener el elemento por id.
Entonces, si id_number es igual al parámetro del método, puede usarlo directamente
además, para borrar el valor, tiene razón, es elem.value = ""
sin tu html puedo proponerte el siguiente => ejecutar tu script
function driverdata(numberId) { var idselect = document.getElementById('driver'+numberId).value; document.getElementById("idinsearch"+ numberId).value = idselect; var placa = document.getElementById("searchable"+idselect).value; if (placa != null) { document.getElementById("placa"+ numberId).value = placa; } else { document.getElementById("placa"+ numberId).value = ""; } } <div onclick="driverdata(1)"> click me<br/> driver<input id="driver1" value="1"/><br/> idinsearch<input id="idinsearch1"/><br/> <div id="searchable1"> input that will be clear <input id="placa1" value="test"/> </div> </div>