GetElementById 无法获取值

qwe*_*iop 3 javascript element get

你知道这是为什么吗

function deleteInputOnClick(input){
    champ = document.getElementById(input);
    if(champ.value =='E-mail'){
        champ.value = "";
    }
}
Run Code Online (Sandbox Code Playgroud)

工作,但这样

function deleteInputOnClick(input){
    champ = document.getElementById(input).value;
    if(champ=='E-mail'){
        champ= "";
    }
}
Run Code Online (Sandbox Code Playgroud)

不是吗?

这可能是一个愚蠢的小错误,但我真的不知道它可能在哪里。

谢谢

Fio*_*ite 5

您不是以第二种方式在元素上重新设置值,您只是将其分配给局部变量,您仍然需要这样做 document.getElementById(input).value = champ;

  • 第一种方式是正确的方式,因为champ变成了一个DOM对象,你可以随时操作它的值,而第二种方式你可以将值提取到一个变量中,所以你不能使用相同的变量重新设置它 (2认同)