Javascript帮助。向DOM添加/删除表单元素

时间:2010-09-17 21:30:39

标签: javascript dom

如果选中单选按钮2,则将输入框添加到日期设置中。如何添加输入框?如果选中单选按钮1则不做任何事情,但如果先前检查了按钮2,则删除子项。你能帮我吗

由于

    function CheckDateOptions() {
var o1 = document.getElementById("dateoption1");
var o2 = document.getElementById("dateoption2");
var eSettings = document.getElementById("datesettings");
if(o1.checked) {
    //Remove o2 children
}
else if(o2.checked) {
    //How do I add an input box?
}

}

    <input type="radio" id="dateoption1" name="dateoption" value="1" onclick="CheckDateOptions();">
<input type="radio" id="dateoption2" name="dateoption" value="2" onclick="CheckDateOptions();"> 

<span id="datesettings">//Add input box here if dateoption2 is checked</span>

2 个答案:

答案 0 :(得分:2)

最简单的路线是:

<input type="radio" id="dateoption1" name="dateoption" value="1" ="ToggleDateOptions(true);" />
<input type="radio" id="dateoption2" name="dateoption" value="2" ="ToggleDateOptions(false);" /> 

<span id="datesettings">
  <input type="text" id="dateSetting" />
</span>

<script>
    function ToggleDateOptions(oneChecked) {
if(oneChecked)
{
    $("#dateSetting").hide();
}
else
{
    $("#dateSetting").show();
}
}
</script>

或者如果您不想使用JQuery(上面使用过),您可以这样做:

if(oneChecked)
    {

        document.getElementById("dateSetting").style.display = 'none';
    }
    else
    {
        document.getElementById("dateSetting").style.display = 'inline';
    }

答案 1 :(得分:1)

您只需使用innerHTML添加输入字段。

这样的事情对你有用

<script type="text/javascript">
    function CheckDateOptions() {
        var o1 = document.getElementById("dateoption1");
        var o2 = document.getElementById("dateoption2");
        var eSettings = document.getElementById("datesettings");
    if(o1.checked) {
        eSettings.innerHTML = "";
    } else if(o2.checked) {
        eSettings.innerHTML = '<input type="text" name="field" />';
    }
}
</script>

<input type="radio" id="dateoption1" name="dateoption" value="1" onclick="CheckDateOptions()"/>
<input type="radio" id="dateoption2" name="dateoption" value="2" onclick="CheckDateOptions()"/>

<span id="datesettings"></span>

Demo