Javascript切换图像和div

时间:2014-07-24 15:20:59

标签: javascript html css toggle togglebutton

我正在尝试切换图像并同时切换Div的可见性,这是​​我到目前为止所拥有的。当我点击图像激活切换时,它正在提交表格,这不是理想的......

<div class="field">

        <script>
  function toggle(){
if(el.className!="off")
{
    el.src='off.png';
    el.className="off";
    var div1 = document.getElementById('1')
    div1.style.display = 'block'
}
else if(el.className=="off")
{
    el.src='on.png';
    el.className="on";
    var div1 = document.getElementById('1')
    div1.style.display = 'none'
}

return false;
}
        </script>

      <label for="Recurring">Recurring:</label> <input style="width:60px;" type="image" src="on.png" class="on" onclick="toggle();"/></div>

      <div style='display:none;' id="1" class="field"><label for="frequency">Please select the frequency:</label><select id="frequency" name="frequency">

        <option value>Please Select</option>
        <option value="10">10</option>

        </select>
        </div>

1 个答案:

答案 0 :(得分:3)

我会稍微改变你的代码,添加一个事件监听器,而不是将javascript注入你的标记(这是首选的方法)。您可以尝试以下代码:

 window.onload = function() {

        var input = document.getElementById('input');

        input.addEventListener('click', toggle);

 }

输入需要id='input,并且需要稍微修改切换功能:

function toggle(e){
    e.preventDefault();

    var el = e.toElement

    //rest of code

}

e.preventDefault()会阻止页面刷新。