我有一个附属表格(对问题 1 回答"is"可能会使问题 2 可见,但回答“否”可能会使其不适用并消失)
我想将输入重置为无答案(无论输入类型如何)
我正在使用
document.getElementById('quest2').value = "";
直到我了解到这样一个事实:如果您对复选框、单选按钮或选择框执行此操作,则无论用户是否再次单击其中一个选项(这很糟糕),您实际上都将值设置为“”,我知道我们可以
switch (***field_type***)
{
case "text":
case "password":
case "textarea":
case "hidden":
document.getElementById('quest2').value = "";
break;
case "radio":
case "checkbox":
if (document.getElementById('quest2').checked)
{
document.getElementById('quest2').checked = false;
}
break;
case "select-one":
case "select-multi":
document.getElementById('quest2').selectedIndex = -1;
break;
default:
break;
}
这是我想做的事情的基础 我的问题首先是我的语法是否正确
第二个应该是*field_type*包含的内容来检查(id'quest2')的输入类型
最佳答案
如果我理解正确,我会稍微重写一下。
我会做这样的事情:
var q2_Elem = document.getElementById('quest2');
switch (q2_Elem.type)
{
case "text":
case "password":
case "textarea":
case "hidden":
q2_Elem.value = "";
break;
case "radio":
case "checkbox":
if (q2_Elem.checked)
{
q2_Elem.checked = false;
}
break;
case "select-one":
case "select-multi":
q2_Elem.selectedIndex = -1;
break;
default:
break;
}
关于javascript清除单个输入组的内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13126662/