当页面刷新时,div消失

时间:2014-04-24 12:15:10

标签: javascript html

无法弄清楚为什么下面的代码会在页面刷新时使文本字段消失(选择' No'单选按钮时)。 此外,刷新页面后,默认的单选按钮不会被选中。

强制刷新,但解决了问题。

有什么想法吗?

<html>
<body>
<div class="editfield">
        <div id="field_1">
            <label>
                <input type="radio" checked="checked" name="radio-1" id="radio-1_id" value="Yes" onclick="document.getElementById('divUrl').style.display='none'">Yes
        </label>
            <label>
                <input type="radio" name="radio-1" id="radio-2_id" value="No" onclick="document.getElementById('divUrl').style.display='block'">No
        </label>
    </div>
</div>
<div class="editfield" id="divUrl" style="display:none">
    <label>Website URL</label>
    <input type="text" name="X" id="X_id" value="" />
</div>
</body>
</html>

2 个答案:

答案 0 :(得分:0)

页面刷新将使页面处于“原始状态”。所以

style="display:none"

将在div上重新激活并隐藏,“是”按钮也将重新启用

答案 1 :(得分:0)

<!DOCTYPE html>
<html lang="en-US">
<body onLoad="document.getElementById('radio-2_id').checked=false; document.getElementById('radio-1_id').checked=true;">
<div class="editfield">
        <div id="field_1">
            <input type="radio" checked="checked" name="radio-1" id="radio-1_id" value="Yes" onclick="document.getElementById('divUrl').style.display='none'">
            <label for='radio-1_id'>
                Yes
        </label>
            <input type="radio" name="radio-1" id="radio-2_id" value="No" onclick="document.getElementById('divUrl').style.display='block'">
            <label for='radio-2_id'>
                No
        </label>
        </div>
</div>
<div class="editfield" id="divUrl" style="display:none">
    <label>Website URL</label>
    <input type="text" name="X" id="X_id" value="" />
</div>
</body>
</html>

只是一个简短的回顾:
1。在页面刷新div应该消失(动态设置/添加的所有css和js和html被删除)和所选的单选按钮应该是第一个(是的)
2。在所有主流浏览器上测试了它,它的工作原理
3。仍然无法弄清楚为什么没有JS刷新它没有在Mozilla和IE上工作


我将标签中的单选按钮移出标签,看看是否以任何方式影响了刷新,而且没有。另外,我删除了原始代码中的额外</div>